Menerima kode POST di laptop melalui bus dua kabel. Perangkat untuk memperbaiki dan menguji komputer - POST Card Kartu pos do-it-yourself paling sederhana untuk compal

Saya membutuhkan antarmuka berkualitas tinggi untuk mesin CNC.
Saya harus segera mengatakan bahwa port paralel tidak cocok untuk saya. karena kualitas implementasinya diragukan, kontaknya sedikit (hanya 16 I/O, saya tidak ingat berapa I dan berapa O) dan frekuensi operasi maksimum hingga 50 kHz, dengan indikator interferensi meragukan, kecuraman tepi, penundaan, dll.
Untuk berinteraksi dengan mesin 6-sumbu, Anda memerlukan 24 pasangan pin diferensial (6 pasangan diff untuk sinyal DIR, 6 pasangan diff untuk sinyal PULSA).
Selain itu, saya menyediakan 12 output TTL digital (hingga 50mA) dan 12 input digital tujuan umum yang diisolasi secara opto.
Dan semua barang ini hampir tidak muat ke dalam konektor SCSI 50 pin, yang sangat saya sukai.


Saya menolak opsi pertama, karena implementasinya akan sepenuhnya bergantung pada chip ini, gangguannya atau ketidakhadirannya.
itu. kami akan sepenuhnya bergantung pada seseorang untuk mengajari mereka spesifikasi, mengurai jenis driver apa yang dibutuhkan, cara menulisnya, dll.

Opsi kedua sedikit lebih padat karya pada awalnya, tetapi kemudian memberikan lebih banyak manfaat, karena FPGA mungkin adalah perangkat paling serbaguna di dunia, dan dengan bantuannya Anda dapat membuat hampir semua antarmuka, dengan perangkat apa pun, Anda dapat mengimplementasikan hampir sirkuit apa pun, dll.

Mari kita mulai dengan yang paling sulit, bus PCI. Semuanya diperumit oleh fakta bahwa spesifikasinya tertutup, tidak banyak informasi di Internet, tetapi ada cara untuk menyiasati borjuasi.
Banyak pabrikan FPGA juga memiliki seperangkat implementasi standar dari berbagai antarmuka dengan biaya tambahan. biaya (yang, tentu saja, orang waras tidak akan membayar), itu semua disebut IP Core (Xilinx mungkin berbeda untuk orang lain, tetapi idenya sama)
apa itu? Yah, itu seperti perpustakaan untuk menautkan kode.
IP Core dapat diberikan sebagai kode langsung (Verilog atau VHDL) atau sebagai netlist tertutup khusus (sesuatu seperti EDIF, tetapi dienkripsi, setiap vendor memiliki formatnya sendiri dan memungkinkan Anda untuk menautkannya hanya menggunakan alat pengembangan mereka)
Terima kasih kepada pengrajin yang dengan jelas memecahkan paket Xilinx ISE 10.1, yang memungkinkan akses ke semua IP Core benar-benar gratis dan pada tingkat kode sumber (yang paling berguna untuk belajar)
Distribusi setiap orang dapat menemukan dirinya di pelacak torrent yang terkenal.

Lebih lanjut, ada situs fpga4fun.com yang menceritakan sesingkat mungkin tentang semua fitur FPGA dan tidak masuk akal untuk menduplikasi informasi ini di sini. Situs tersebut berbicara tentang FPGA dari dua pemimpin pasar: Xylinx dan Altera.
Anda juga perlu mempelajari Verilog, tetapi jika Anda telah memprogram dalam beberapa bahasa, maka ini tidak akan lebih sulit.

Chip mana yang harus dipilih??
Saya menetap di Xylinx Spartan xxx
Ada beberapa jebakan di sini.
1) Kompatibel dengan bus PCI32 5V
2) Jumlah output yang dapat di-switch secara bersamaan (disebut SSO simultan switching outputs)
3) Jenis kasus: BGA atau PQ
4) Built-in flash atau ditempatkan di chip yang terpisah?
5) Waktu boot maksimum sebelum menerima sinyal pertama dari PCI

Kompatibel dengan bus PCI32 5V

Ini mungkin yang paling penting dari semuanya. Anda harus membuat pilihan apakah akan menggunakan chip konversi level sinyal untuk semua bus I/O (sekitar 50) dan menggunakan FPGA modern (toleransi 1.25V, 2.5V, 3.3V tidak ada 5V).
Atau gunakan FPGA lama.
Untuk proyek saya, saya memilih FPGA lama (Spartan II) dan belum menyesalinya.
Perlu dicatat bahwa penggunaan chip konversi level menambah kerumitan tambahan pada masalah SSO, karena
chip tersebut menghasilkan overshots dan undershots tegangan dan dapat menyebabkan kesalahan.
PCI32 3.3V SSO, masalah daya dan waktu booting FPGA maksimum:
http://www.xilinx.com/support/documentation/application_notes/xapp457.pdf
Koneksi Bus Switch terbaik untuk kompatibilitas 5V PCI (yang merupakan standar untuk PC rumahan):
http://www.xilinx.com/support/documentation/application_notes/xapp646.pdf
Masalah overshot dan undershot diselesaikan di sini dengan menggeser permukaan tanah untuk chip konverter level.
Perlu dicatat terutama bahwa untuk meningkatkan jumlah SSO (juga disebut Ground bouncing), resistor shunt digunakan untuk memberi daya pada chip, mengatur arus "idle" ke 50mA (resistor 34 ohm, untuk memberi daya 3.3V)
Saya melihat resistor seperti itu, atau umpan balik resistansi rendah untuk LDO, di SEMUA papan sirkuit pci yang berhasil saya dapatkan.

Jumlah output yang dapat dialihkan secara bersamaan (disebut SSO: secara bersamaan mengalihkan output)

Untuk setiap chip dan jenis casing, parameter ini berbeda dan diberikan dalam lembar data.
Misalnya, dalam kasus saya dengan tipe casing PQ208 dan model Spartan II untuk standar PCI, diperbolehkan menggunakan hingga 4 SSO per grup daya, yang totalnya ada 16 di perangkat (dua per bank, dari yang ada 8)

Selanjutnya, saya mengambil konstanta yang disertakan dengan IP Core PCI (versi 3.199) (file *.ucf User Constants)
Dan ternyata mereka mendistribusikan semua sinyal PCI ke 4 bank (ternyata 32 sinyal SSO diperbolehkan, sedangkan bus pci membutuhkan sekitar 40 sinyal dengan front curam):
http://www.xilinx.com/support/documentation/application_notes/xapp457.pdf
AD CBE PAR IRDY#, FRAME# REQ#
Selain itu, bank diisi secara tidak merata, yang juga melanggar SSO yang Diperbolehkan.
Di sisi lain, IP Core diuji dalam konfigurasi ini dan saya takut mengubah sesuatu di sini.
dengan risiko tidak berinvestasi dalam pengaturan waktu bus PCI, karena kekhasan arsitektur FPGA internal.
Jadi saya melakukan upaya ekstra untuk meningkatkan SSO. Saya meletakkan shunt (120 ohm) pada output dari setiap regulator tegangan suplai, kapasitor bypass yang baik, PCB multi-layer dengan lapisan terpisah untuk ground, dll.
Anda juga harus memikirkan lokasi pin yang nyaman untuk menelusuri papan sirkuit tercetak!

Jenis paket: BGA atau PQ

Saya memilih PQ208, BGA memiliki keuntungan lebih (dua kali lipat SSO), tetapi ada risiko tidak menyolder di rumah, beberapa pin mungkin masih korsleting karena perpindahan chip, yang berbahaya untuk motherboard Anda!.

Built-in flash atau ditempatkan di chip yang terpisah? dan Waktu booting maksimum sebelum menerima sinyal pertama dari PCI

Di sini saya menyesal untuk pertama kalinya bahwa saya menghubungi jalur chip lama dan tidak memilih Spartan 3AN baru (dengan flash bawaan)
Ternyata setiap model Spartan II memiliki chip sendiri yang dapat diprogram melalui JTAG.
Ternyata cukup mahal, dan rasanya akan segera berhenti dijual.
XC18V01 (flash 1MB dalam kasus saya)
Cara menyambungkannya ke FPGA Spartan II ada di datasheet.
Mungkin antarmuka serial atau paralel, dikendalikan oleh jam FPGA internal atau eksternal!, saya memilih serial yang dikendalikan oleh FPGA, mis. sinyal panggilan dihasilkan oleh FPGA itu sendiri dan setelah pengunduhan selesai ia masuk ke mode operasi.
Frekuensi unduhan konfigurasi adalah 66MHz, untuk PCI32 5V cukup untuk menjaga dalam 1,1 detik (PCI32 5V 32Mhz) untuk memuat konfigurasi penuh. namun, hanya sebagian kecil dari ruang konfigurasi yang akan digunakan dalam proyek saya.

Nah, itu saja, saya akan segera lay out papan sirkuit cetak dan sirkuit, di bagian selanjutnya.
Maka akan ada software dan kartu PCI kita sudah siap.

Selamat siang% habrauser%!

Baru-baru ini, saya menulis posting tentang kartu POST, tautologi yang baik ;-)?
Di dalamnya, saya berjanji untuk menulis sekuel jika topiknya menarik, dan karena topik itu ternyata menarik bagi Khabrovit, saya melanjutkan!

Sebenarnya subjek

Seperti yang saya sebutkan di komentar, untuk artikel pertama saya, saya memesan kartu untuk diri saya sendiri - yang ini untuk laptop dan yang ini untuk desktop.

Pesanan dilakukan pada tanggal dua puluh Januari (saya tidak dapat menentukan tanggal pastinya, bukan saya yang memesan, melacak, dan menerima). Suatu hari kartu ini datang, kata mereka, kartu laptop, Anda harus menunggu kartu desktop. Di sini saya ingin mengungkapkan beberapa kemarahan -
1) Kartu-kartu itu dipesan dalam satu urutan, mereka pergi dengan cara yang berbeda (saya harap yang kedua masih berjalan, dan tidak hilang);
2) waktu pengiriman! Tentu saja, saya dapat mengerti bahwa mereka memiliki Tahun Baru Imlek, tetapi sebulan (dilihat dari tanggal pada paket) terlalu banyak, terutama jika digabungkan dengan fakta bahwa mereka selesai dengan tiga ( TIGA) minggu!
3) Diextreme membutuhkan sekitar 200 rubel untuk mengeluarkan trek parsel, trek itu sendiri gratis dan ditugaskan untuk setiap parsel, jadi keputusannya adalah pedagang asongan!
Pada titik-titik ini kemarahan saya berakhir dan saya memulai ulasan.

Kartu itu datang dalam sebuah parsel, di dalam parsel itu dilem dengan generator ketenangan pikiran, kartu itu sendiri dikemas di dalamnya dan anti-statis, sehingga orang Cina mendekati masalah pengemasan secara menyeluruh. Dalam anti statis kami memiliki kartu itu sendiri, kabel USB dan Panduan Pengguna.

Kartu ini dirancang untuk mini PCI dan juga memiliki ( tidak dimaksudkan mengapa kita membaca lebih lanjut) port untuk LPT, USB diperlukan untuk memberi daya pada kartu. Hal pertama yang ingin saya lakukan adalah mengujinya secara alami! Tetapi saya tidak memiliki laptop, jadi dengan pikiran murni saya memutuskan untuk mengujinya di port LPT.

Benar-benar terjebak kartu

Saat daya diterapkan, kartu menampilkan "--" dan "FF".

Nyalakan mobil

Kemudian kartu mengubah gambar beberapa kali, dan sekali lagi "FF00" sistem melakukan booting. Pertanyaan yang masuk akal dan keinginan untuk mencari tahu jenis kode apa yang muncul, membuat kami membuat kesimpulan sederhana bahwa hanya dua tombol yang memungkinkan Anda menggulir kode, dan voila! Jadi, kami menyodok tombolnya, kami mengerti

Sekarang di panel kiri ada nomor seri kode POST, di sebelah kanan adalah kode itu sendiri. (tidak berurutan karena berulang di awal)

tombol tik

tombol tik

tombol tik

Tusuk lagi

Sekali lagi colek

Sekali lagi

Dan sedikit lagi

Ini yang terakhir

Di sini kita sampai pada satu hal yang menarik dan bukan kesimpulan yang paling mengesankan.
Poin yang menarik adalah Panduan pengguna, di awal manual kami memiliki penunjukan LED

"+5 volt" menyala sepanjang waktu saat ibu dihidupkan, itu cukup logis karena USB ;-)

"+3,3 volt" indikator daya yang sama dengan "+5 volt" tidak menyala ketika tidak ada daya ke slot PCI (atau ibu tidak mendukung, pasangan tidak menemukan terjemahan yang tepat, dalam bahasa aslinya )

"FRAME" menyala ketika sinyal "FRAME" aktif.

BINGKAI (I/O)
Hubungi A34

Sinyal FRAME dikeluarkan oleh master aktif pada bus PCI. Transisi FRAME ke rendah, mis. aktif, lapisan memulai fase pengalamatan. Untuk menandakan fase data terakhir yang menyelesaikan siklus bus, pelanggan utama harus menonaktifkan FRAME lagi.

"CLK" menyala ketika sinyal "CLK" aktif.

CLK(O)
Hubungi B16

Pin ini membawa sinyal timer PCI yang menyertai semua operasi PCI. Sesuai dengan persyaratan teknis, frekuensinya terletak pada kisaran 0 hingga 33 MHz.

"RSET" bersinar saat reboot

"+12" aktifkan logika formal

"-12" mengaktifkan logika formal

"-5" sama dengan "+3,3 volt"

Kode dekripsi

BIOS pada ibu Phoenix.

FF dalam kasus saya adalah adanya +5 di USB

A5 tidak tercantum dalam manual (kosongkan saja)

AA menunggu untuk menekan F2

55 mengaktifkan perangkat USB

04 dapatkan jenis CPU

Foto menunjukkan "+5 volt"

Jadi "hal yang menarik, manual berisi tabel dengan semua kode untuk Phinks, AMI Avardavian BIOS, "bukan kesimpulan yang paling mengesankan" adalah bahwa kartu tersebut mendorong omong kosong pada LPT!

Berbicara tentang manual - 28 halaman A6 informasi paling murni tentang kode POST, penunjukan sinyal speaker, dan operasi CMOS. Saya akan mengurus terjemahannya dalam waktu dekat, dan mempresentasikannya ke habrosociety, tapi saya pikir saya akan menunggu peta desktop untuk membuat manual konsolidasi.

Saya sedang menunggu kartu kedua dan laptop martir untuk tes dan ulasan lengkap Saya menerjemahkan dan merokok manual.

P.S Minggu jam enam pagi, mungkin saya melewatkan sesuatu. Pertanyaan di komentar, saya akan menambahkan jika perlu.

P.P.S artikel ditulis dalam mode real-time, "on the fly" saat menulis, reboot dan mengambil foto.

Dua kutipan digunakan dalam penyusunan artikel

Salam, Khabrovit terkasih!

Bukan tahun pertama saya terlibat dalam diagnostik dan resusitasi desktop dan laptop, terutama di rumah klien. Seiring waktu, kesimpulannya menunjukkan bahwa Anda perlu membawa koper, dan mungkin bahkan koper dengan aksesori untuk mendiagnosis bagian besi yang rusak. Beberapa mungkin keberatan dengan saya - “Anda dapat melakukannya tanpa komponen! Pengalaman memungkinkan Anda melakukan diagnosa tanpa mereka! Ini sebagian benar, tetapi tidak memberikan akurasi seratus persen, ini adalah fakta.

Mengandalkan kode POST pembicara? Tidak selalu mungkin secara khusus menentukan apa yang dia keluhkan. Misalnya, satu bip panjang dua speaker pendek menunjukkan kerusakan sistem video, tetapi ini tidak selalu berarti kerusakan kartu video itu sendiri. Ada, misalnya, masalah dengan tambahan catu daya ke kartu video ini, dan ini sudah merupakan kegagalan fungsi catu daya.

Di sini saya akan berhenti dan memberi tahu pembaca yang budiman apa sinyal pembicara.

Saat Anda menghidupkan komputer, BIOS (sistem input / output dasar) dimulai - fakta yang diketahui semua orang, tetapi tidak akan berlebihan untuk disebutkan. Sebagai bagian dari BIOS, terdapat program yang disebut POST (power on self testing), sesuai dengan namanya, program ini dirancang untuk diagnostik awal perangkat dan port pada motherboard.

Prosedur inisialisasi POST disertai dengan menampilkan gambar di monitor:

Setelah melewati POST, kita melihat:

Selama eksekusi POST, apa yang disebut kode POST dihasilkan, yang ditulis ke register diagnostik khusus.

Sebenarnya, sinyal speaker adalah kode kesalahan saat melakukan POST, jika POST dilakukan tanpa kesalahan, kami mendengar satu sinyal pendek.

Kami lolos ke subjek.

kartu pos.

Kartu POST adalah kartu ekspansi, paling sering ada kartu format PCI:

Ada juga kartu miniPCI (untuk laptop):

Dan ada kartu untuk LPT (memerlukan daya USB tambahan):

Memiliki desktop dengan diagnosis luar biasa "tidak menyala" (jangan bingung dengan "tidak mulai"), paling sering, periferal non-kritis pertama kali dimatikan secara berurutan - suara, tuner, kartu jaringan, hard drive, drive .
Kemudian, jika tidak ada malfungsi yang diidentifikasi dalam proses, penggantian komponen dimulai: RAM, kartu video, prosesor (ya, koper yang sama dengan potongan besi).

Tetapi sekarang kami memiliki kartu POS di tangan kami alih-alih koper dengan besi, kami menghemat waktu melewati prosedur di atas dengan mengganti / mematikan setrika (kami menghemat rata-rata 40 menit, saya perhatikan bahwa setelah mematikan satu potong besi , setidaknya satu siklus hidup-mati dilakukan).

Sebenarnya, kami memasukkan peta indah kami dan melihat apa yang terjadi.
Dan berikut ini terjadi - di papan skor peta kami memiliki kode pos yang menunjukkan kepada kami apa yang sedang diuji saat ini. Setelah mencapai elemen yang salah, prosedur eksekusi POST berhenti dan kode tetap ada di papan skor, paling sering manual dengan kode POST dilampirkan ke subjek (bervariasi tergantung pada pabrikan dan versi BIOS).

Dengan membandingkan kode error dengan decoding-nya, paling sering kita mendapatkan diagnosis akhir, seperti: memori rusak, prosesor, atau komponen pada motherboard.

Saya kira saya akan menulis serangkaian artikel tentang diagnostik, jika topiknya menarik bagi orang Khabrovit.

Salam, Khabrovit terkasih!

Bukan tahun pertama saya terlibat dalam diagnostik dan resusitasi desktop dan laptop, terutama di rumah klien. Seiring waktu, kesimpulannya menunjukkan bahwa Anda perlu membawa koper, dan mungkin bahkan koper dengan aksesori untuk mendiagnosis bagian besi yang rusak. Beberapa mungkin keberatan dengan saya - “Anda dapat melakukannya tanpa komponen! Pengalaman memungkinkan Anda melakukan diagnosa tanpa mereka! Ini sebagian benar, tetapi tidak memberikan akurasi seratus persen, ini adalah fakta.

Mengandalkan kode POST pembicara? Tidak selalu mungkin secara khusus menentukan apa yang dia keluhkan. Misalnya, satu bip panjang dua speaker pendek menunjukkan kerusakan sistem video, tetapi ini tidak selalu berarti kerusakan kartu video itu sendiri. Ada, misalnya, masalah dengan tambahan catu daya ke kartu video ini, dan ini sudah merupakan kegagalan fungsi catu daya.

Di sini saya akan berhenti dan memberi tahu pembaca yang budiman apa sinyal pembicara.

Saat Anda menghidupkan komputer, BIOS (sistem input / output dasar) dimulai - fakta yang diketahui semua orang, tetapi tidak akan berlebihan untuk disebutkan. Sebagai bagian dari BIOS, terdapat program yang disebut POST (power on self testing), sesuai dengan namanya, program ini dirancang untuk diagnostik awal perangkat dan port pada motherboard.

Prosedur inisialisasi POST disertai dengan menampilkan gambar di monitor:

Setelah melewati POST, kita melihat:

Selama eksekusi POST, apa yang disebut kode POST dihasilkan, yang ditulis ke register diagnostik khusus.

Sebenarnya, sinyal speaker adalah kode kesalahan saat melakukan POST, jika POST dilakukan tanpa kesalahan, kami mendengar satu sinyal pendek.

Kami lolos ke subjek.

kartu pos.

Kartu POST adalah kartu ekspansi, paling sering ada kartu format PCI:

Ada juga kartu miniPCI (untuk laptop):

Dan ada kartu untuk LPT (memerlukan daya USB tambahan):

Memiliki desktop dengan diagnosis luar biasa "tidak menyala" (jangan bingung dengan "tidak mulai"), paling sering, periferal non-kritis pertama kali dimatikan secara berurutan - suara, tuner, kartu jaringan, hard drive, drive .
Kemudian, jika tidak ada malfungsi yang diidentifikasi dalam proses, penggantian komponen dimulai: RAM, kartu video, prosesor (ya, koper yang sama dengan potongan besi).

Tetapi sekarang kami memiliki kartu POS di tangan kami alih-alih koper dengan besi, kami menghemat waktu melewati prosedur di atas dengan mengganti / mematikan setrika (kami menghemat rata-rata 40 menit, saya perhatikan bahwa setelah mematikan satu potong besi , setidaknya satu siklus hidup-mati dilakukan).

Sebenarnya, kami memasukkan peta indah kami dan melihat apa yang terjadi.
Dan berikut ini terjadi - di papan skor peta kami memiliki kode pos yang menunjukkan kepada kami apa yang sedang diuji saat ini. Setelah mencapai elemen yang salah, prosedur eksekusi POST berhenti dan kode tetap ada di papan skor, paling sering manual dengan kode POST dilampirkan ke subjek (bervariasi tergantung pada pabrikan dan versi BIOS).

Dengan membandingkan kode error dengan decoding-nya, paling sering kita mendapatkan diagnosis akhir, seperti: memori rusak, prosesor, atau komponen pada motherboard.

Saya kira saya akan menulis serangkaian artikel tentang diagnostik, jika topiknya menarik bagi orang Khabrovit.