Mengapa tidak menerapkan 1Gbps, padahal yang saya butuhkan adalah 20Mbps?

27

Latar Belakang

Saya bekerja dengan klien pada proyek besar yang membutuhkan chip jaringan khusus untuk dirancang untuk menyelesaikan persyaratan transfer data dalam proyek. Jaringan ini dimaksudkan untuk mengirim paket kecil beberapa inci dari satu PCB ke yang lain melalui kabel twisted pair. Kami akan merancang dan menetapkan protokol jaringan, dan perusahaan lain akan bertanggung jawab untuk implementasi silikon.

Saya memperkirakan bahwa data rate 20Mbps antara node akan dengan mudah mengatasi jumlah data yang perlu dikirim, dengan banyak ruang kepala jika jumlah data meningkat di masa depan.

Masalah

Klien bertanya kepada saya mengapa saya menetapkan hanya 20Mbps. Mengapa bukan sesuatu seperti 1Gbps? Bukankah itu lebih baik? Secara intuitif, saya merasa bahwa menaikkan tingkat data secara besar-besaran di luar apa yang dibutuhkan adalah ide yang buruk. Awalnya, saya berpikir bahwa pemasangan kabel perlu dilindungi (yang saya tidak mau), tetapi melihat kategori kabel Ethernet, saya melihat bahwa Gigabit Ethernet dapat berjalan pada kabel Cat 6, yang tidak perlu dilindungi.

Kendala lainnya

  • Proyek ini sangat dibatasi ruang, dan apakah kita tidak memiliki ruang untuk hal-hal seperti magnet, kecuali itu komponen yang sangat kecil (maks 0603).
  • Kabel harus setipis dan sefleksibel mungkin.
  • Perangkat akan beroperasi dari daya plug-in, sehingga tidak ada persyaratan daya rendah tertentu.

Pertanyaan

Apa masalahnya, dalam hal desain silikon, kabel, dan hal lain, yang mungkin dihadapi pada 1Gbps, yang tidak akan seburuk 20Mbps? Haruskah saya mengikuti saran klien saya untuk mengimplementasikan jaringan pada 1Gbps, atau haruskah saya bersikeras menerapkan hanya apa yang diperlukan?

Kami berada di bawah NDA yang ketat, jadi saya tidak bisa memberikan terlalu banyak detail tentang persyaratan kami. Tapi tolong tinggalkan komentar jika diperlukan klarifikasi.

Roket
sumber
3
Jika aplikasi membutuhkan 20 Mbps throughput, maka kemungkinan standar 100 Mbps yang lebih lama akan cukup, mengingat semua overhead dan semacamnya. Jadi pertanyaannya adalah biaya implementasi, ketersediaan suku cadang di masa depan. Apakah Anda memeriksa biaya yang sesuai? Juga, apa maksud Anda "dalam hal desain silikon"? Apakah Anda berencana untuk mendesain silikon Anda sendiri?
Ale..chenski
9
1Gbps mungkin berlebihan ... 100Mbps mungkin langkah berikutnya yang lebih sesuai dalam kecepatan .... jika pelanggan khawatir dengan perangkat yang akan memeriksa masa depan, mungkin jelajahi penggunaan kompresi data ...... mungkin menunjukkan kepada pelanggan berapa banyak data yang dicapai dengan 20Mbps ... tunjukkan video HD youtube kepada mereka dan jelaskan bahwa bandwidth hanya 8Mbps atau lebih
jsotola
12
Mengapa Anda menginginkan protokol "jaringan" untuk koneksi point-to-point?
The Photon
20
Merancang "protokol jaringan" dari awal tidak terlihat seperti ide yang sangat bijak. Ini bisa sangat mahal untuk desain, implementasi lapisan fisik, validasi lapisan fisik, kemudian lapisan protokol, semua perangkat lunak terkait dan validasinya, dll. Pernahkah Anda mendengar tentang HSIC, semacam USB lebih dari 1.2VLVCMOS?
Ale..chenski
20
Tolong, buat demo bersama dengan IC ethernet 100M tanpa magnet untuk demo ke pengguna, dan untuk dirimu sendiri, apa yang dapat dilakukan dengan standar dari bagian rak. Jangan lakukan silikon kustom, protokol khusus, tanpa memahami mengapa yang standar tidak akan melakukannya.
Neil_UK

Jawaban:

24

Beberapa alasan:

Kekuasaan

Kecepatan lebih cepat berarti lebih banyak daya. Anda tidak hanya membutuhkan sirkuit analog yang lebih cepat, yang akan memberi konsumen lebih banyak daya, semua elektronik Anda di sekitarnya harus lebih cepat. Sistem digital Anda, kait Anda, manajemen jam, dll. Jika Anda mendapatkan 1 Gbps dengan menggunakan pensinyalan bertingkat Anda sekarang membutuhkan ADC dan DAC yang lebih baik. Anda mungkin harus mulai berurusan dengan penyaringan yang lebih kompleks. Anda bisa mulai membutuhkan FEC yang juga harus mengikuti.

Ukuran chip

Lebih cepat berarti lebih banyak terjadi. Anda membutuhkan stabilitas jam yang lebih baik, yang berarti sirkuit lebih besar. Anda memerlukan pengaturan waktu yang lebih baik, yang berarti sistem pemulihan jam yang lebih kompleks. Anda mungkin perlu beralih menggunakan DSP untuk melakukan pemerataan saluran. FEC Anda yang berpotensi dibutuhkan membutuhkan ruang chip.

Kepekaan lingkungan

Jika Anda beralih dari beberapa puluh megabaud ke apa pun yang diperlukan untuk gigabit, Anda akan menjadi jauh lebih peka terhadap lingkungan. Ketidakcocokan kecil yang mungkin tidak terlalu mencolok pada beberapa puluh MHz menjadi bertopik resonansi pada frekuensi yang lebih tinggi. Refleksi mungkin mulai menyebabkan kinerja yang terputus-putus. Kabel sobek karena penyalahgunaan selama bertahun-tahun (saya tidak tahu lingkungan aplikasi untuk produk Anda) mungkin baik untuk kecepatan yang lebih rendah, tetapi menyebabkan kinerja yang buruk ketika Anda pergi lebih tinggi.

Upaya desain

Saya pikir jelas dari semua masalah tambahan yang saya bahas di atas bahwa waktu dan upaya merancang tautan komunikasi yang lebih cepat adalah signifikan. Ini saja sudah cukup menjadi alasan.

EMI

Kecepatan lebih cepat berarti memenuhi persyaratan EMI bisa lebih sulit.

Joren Vaes
sumber
5
@Rocketmagnet: Juga patut untuk menunjukkan bahwa 802.3 1000Base-T gig-E aktual dari Cat5e mengirimkan sinyal di kedua arah sekaligus lebih dari 4 pasang kabel, serta menggunakan pengkodean multi-level, untuk menjaga frekuensi turun ke 125MHz yang sama sebagai 100Base-T . Jadi setiap penerima harus mengurangi apa yang dikirim oleh pemancarnya sendiri, untuk mendapatkan sinyal yang dikirim oleh ujung yang lain.
Peter Cordes
2
@PeterCordes - Itu sangat menarik, saya akan memeriksanya. Tapi kedengarannya jauh lebih rumit daripada LVDS dasar.
Rocketmagnet
2
@ Rocketagnet: ya, GigE terdengar seperti pilihan yang sangat buruk untuk ini. Ada alasan mengapa transceiver GigE menggunakan daya lebih dari 100 juta.
Peter Cordes
24

Sinyal TTL (ujung tunggal, tidak tertentu) dapat dengan mudah menangani 20 Mbps atau lebih - lihat SPI, misalnya. Jika Anda hanya akan beberapa inci, kabel pita dan konektor IDC (atau semacam backplane) akan membawa Anda dari papan ke papan.

1 Gbps menempatkan Anda di ranah keharusan berurusan dengan jejak, konektor, dan kabel yang dikontrol impedansi. Penerima perlu menggunakan teknik PLL / DLL untuk mempertahankan sinkronisasi dan memisahkan jam / data, sedangkan pada kecepatan yang lebih lambat, logika sinkron normal akan cukup. 50x berlebihan dan sakit kepala tambahan sama sekali tidak layak, jika Anda yakin bahwa 20 Mbps sudah cukup untuk masa mendatang.


Saya pernah merancang (25 atau lebih tahun yang lalu) protokol bus serial khusus untuk kontrol board-to-board dan status di antara papan di rak telekomunikasi. Semacam persilangan antara I 2 C dan SPI - sinyal searah seperti SPI, tetapi alamat perangkat yang disematkan seperti I 2 C.

Dave Tweed
sumber
Dengan asumsi bahwa kita sudah berniat untuk menggunakan jejak, kabel dan konektor yang dikendalikan impedansi, apakah ada masalah lain?
Rocketmagnet
1
Penerima perlu menggunakan teknik PLL / DLL untuk menjaga sinkronisasi dan memisahkan jam / data. Pada kecepatan yang lebih lambat, logika sinkron normal akan cukup.
Dave Tweed
10
Itu tergantung pada detail tentang teknologi implementasi Anda yang mungkin Anda tidak bisa ungkapkan. Jika Anda menggunakan FPGA (sebagaimana tersirat oleh penggunaan tag Anda), perhatikan bahwa semua vendor utama memiliki solusi kalengan untuk komunikasi chip-ke-chip pada berbagai kecepatan. Anda disarankan untuk menggunakannya untuk lapisan fisik Anda, dan mengimplementasikan protokol khusus Anda di atasnya.
Dave Tweed
1
Mendesain blok PLL bukanlah hal sepele dan membeli IP dapat dengan mudah membuat Anda mengembalikan $ 50-100 ribu
Mike
1
@Ustrikus Anda pikir itu sepele untuk merancang PLL Anda sendiri pada silikon?
user253751
14

Pertanyaan yang jelas adalah, "Apakah 1 Gbps berarti 1000BASET Ethernet?" Jika itu yang dipikirkan pelanggan, syarat Anda bahwa, "kami tidak punya ruang untuk hal-hal seperti magnet" langsung berlaku. Ethernet memang menggunakan magnet pada lapisan fisik, dan ketika saya mendesain antarmuka beberapa tahun lalu, magnet adalah bagian dari kubus sekitar 1 inci.

Anda mengatakan Anda menggunakan FPGA, tetapi Anda tidak mengatakan milik siapa. Jika Anda menggunakan Xilinx, Anda harus menyadari bahwa model saat ini secara native mendukung LVDS, yang tampaknya ideal untuk tujuan Anda. Sistem LVDS awal (televisi hi-def) berjalan pada 122 Mbps, dan teknologinya dapat melampaui Gbps jika Anda benar-benar perlu. Menjadi diferensial, dan dengan asumsi dua papan Anda tidak menggunakan alasan mengambang liar, kekebalan kebisingan sangat baik.

Adapun pilihan frekuensi jam spesifik Anda, menambahkan lebih banyak ruang kepala daripada yang Anda pikir Anda butuhkan adalah salah satu keputusan yang dapat menghemat daging Anda di masa depan, jadi saya tidak akan mengesampingkan memilih sesuatu seperti 100 MHz, tapi itu terserah Anda. Anda mungkin memperkenalkan Hukum Roberge kepada pelanggan Anda (Jim Roberge adalah seorang profesor teknik elektro terkenal di MIT beberapa dekade yang lalu): "Mereka yang meminta bandwidth lebih dari yang mereka butuhkan pantas mendapatkan apa yang mereka dapatkan." Memang, dia berbicara tentang sistem servo, tetapi prinsipnya tetap bagus dalam berbagai disiplin ilmu.

WhatRoughBeast
sumber
7
Ethernet tidak memerlukan magnetis jika Anda membuat koneksi yang tidak standar. Ini cukup andal jika diterapkan tanpa isolasi.
Jack Creasey
1
@JackCreasey tetapi bisakah seseorang kemudian menyebutnya Ethernet ?
Mels
2
Ini tentu saja tidak sesuai dengan IEEE 802.3. Ini tidak akan terhubung ke titik akhir yang sesuai, tapi saya bilang itu akan tidak sesuai tanpa magnet. Saya ragu itu akan lulus test suite untuk sinyal pada koneksi backplane, tetapi harus melewati semua yang lain termasuk jitter. Saya masih menyebutnya Ethernet, tetapi Anda mungkin tidak.
Jack Creasey
2
FYI: satu-satunya hasil Google untuk "Mereka yang meminta bandwidth lebih dari yang mereka butuhkan pantas mendapatkan apa yang mereka dapatkan." apakah jawaban ini.
user253751
11

Aplikasi yang Anda gambarkan tidak masuk akal untuk melompat langsung ke solusi silikon khusus. Kecepatan data yang Anda antisipasi dapat dengan mudah ditangani oleh teknologi FPGA dengan harga sedang dan FPGA dapat diprogram untuk mengimplementasikan protokol khusus jika Anda benar-benar percaya bahwa protokol tersebut diperlukan.

Jauh lebih sering Anda harus mempertimbangkan lapisan fisik standar dan kemudian membangun protokol khusus di atasnya. Untuk bandwidth saluran komal bersih 20Mbps, Anda harus merencanakan overhead protokol dengan jumlah tertentu karena pembingkaian, pengkodean pemeriksaan kesalahan, dan sinkronisasi memakan sebagian bandwidth Anda. Jadi mungkin pertimbangkan bandwidth mentah yang lebih tinggi untuk mengakomodasi overhead ini.

Setelah Anda membuktikan desain Anda, maka Anda dapat pergi ke vendor FPGA dan membuatnya untuk menghasilkan desain hard chip dari pemrograman FPGA. Pendekatan ini mengurangi semua risiko perkembangan awal dan menurunkan keseluruhan NRE biaya sejumlah besar selama "menyelam ke silikon kustom hanya karena tampaknya keren".

Michael Karas
sumber
Itulah rute yang ingin kita ambil.
Rocketmagnet
11

Pertanyaan sebenarnya adalah, mengapa harus merancang protokol ketika semuanya sudah ada.

Untuk solusi Ethenet Anda mengambil 10/100 dan bukan 1GbE karena masih sedikit lebih murah dan lebih mudah untuk tata letak. Omong-omong, Ethernet dapat bekerja tanpa magnet. Tetapi memang membutuhkan MAC, yang bisa menjadi IC tambahan. Atau apakah Anda memilikinya di mikrokontroler?

20Mbps adalah sesuatu yang cocok dengan Rs485 atau lapisan seperti itu, yang bahkan lebih murah dan lebih sederhana. Pasangan bengkok datang dengan semua jenis kabel, lebih atau kurang fleksibel, dengan konektor atau hanya disolder ke PCB Anda.

Ah, yang terpenting. Lebih mudah mengacau dengan 1Gb. Tetapi jika mereka membutuhkan ruang untuk pertumbuhan lebih lanjut, itu membatasi kurang.

Intinya: Anda perlu memahami persyaratan sistem Anda.

Gregory Kornblum
sumber
10

Saya menyarankan rute paling sederhana dengan kemungkinan keberhasilan terbaik dan paling tidak overhead perangkat lunak adalah untuk menerapkan koneksi Ethernet 100Mbps. Anda dapat menerapkan ini tanpa melibatkan magnet ketika jaraknya kecil.

Ini adalah permulaan dengan informasi tentang pengontrol Intel 8255 PCI-Ethernet , dan catatan aplikasi pada koneksi tanpa magnetis.
Saya tidak menyarankan Anda menggunakan 8255, tetapi Anda bisa mendapatkan IP (10/100 / 1000Mbps) untuk FPGA mana pun yang mungkin Anda gunakan dengan sangat mudah, dan itu juga sudah tidak jelas.

Dengan asumsi Anda memiliki prosesor dalam campuran, mendukung pengontrol Ethernet standar adalah cara perangkat lunak yang sangat rendah untuk mengimplementasikan jaringan titik ke titik.
Kami menggunakan banyak jenis koneksi point to point pada motherboard khusus di Intel, mereka mudah di-debug, dan sangat andal.

Jack Creasey
sumber
4
Meskipun ethernet dapat melakukan protokol, 100 Base ethernet memiliki persyaratan jarak minimum 1 meter (ini membuat saya beberapa tahun yang lalu menggunakan ethernet melalui implementasi backplane). OP menyebutkan jaraknya beberapa inci yang agak mengesampingkan ethernet pada lapisan fisik.
Peter Smith
1
@PeterSmith, jarak minimum TIDAK berlaku untuk Ethernet tanpa magnet. Ini akan bekerja hingga hanya beberapa inci.
Jack Creasey
5

Jawabannya di sini adalah teknis, saya memberikan perspektif persyaratan teknik:

Pandangan saya tentang itu sederhana

  • Anda membutuhkan setidaknya 20Mbps untuk membuatnya berfungsi, jadi jangan tentukan 20 tetapi "20 atau lebih" untuk aplikasi.

  • setiap perangkat keras yang lebih cepat juga memenuhi kebutuhan Anda

  • jika HW lebih cepat lebih murah / lebih mudah untuk dikembangkan karena standar yang ada, maka kebutuhan Anda dapat dipenuhi oleh yang ini juga.

  • Jika pelanggan menginginkan lebih, cobalah mencari tahu apakah ada sesuatu di baliknya (bisa jadi mereka sudah merencanakan peningkatan dan ingin tetap kompatibel di antara papan saat bertukar)

Sascha
sumber
3

Daya, integritas sinyal, dan waktu. Saya bekerja pada sebuah chip dengan antarmuka 25 gbps dan itu berarti clock rate 1,6 GHz dan satu ton daya. Jika kita bisa berlari pada 19.2 laju clock akan menjadi 1,2 GHz. Lebih dari 200ps margin ekstra per periode waktu, itu akan sangat membantu.

Saya tidak pernah melakukan desain papan tetapi saya berharap bahwa 20 Mbps tidak ada masalah. 1 Gbps masih tidak sulit tetapi jauh lebih sulit dari 20 Mbps.

Mat
sumber