| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Решение за бридж от pciexpress към local bus http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=17885 |
Страница 1 от 2 |
| Автор: | gicho [ Чет Май 20, 2021 9:16 pm ] |
| Заглавие: | Решение за бридж от pciexpress към local bus |
Имаме едни устройства, които ползват интелски процесори и към тях като периферия са закачени няколко чипа с паралелна шина - адрес и данни. Тъй като интелът има само pciexpress сме сложили бридж на PLX, които от едната страна е pcie, вътре прехвърля първо към pci и след това го обръща на "local bus" - 32 бита данни, адреси и контролни сигнали. Чипът е pex8311 и в това е проблема - стар е, няма производство, собствеността на фирмата се смени няколко пъти през последните 10 години (сега са при broadcom). След него има и някакъв actel, дето прави прости логики - нещо адаптира по паралелния интерфейс (може би CS, и подобни специфики). На пазара няма много бройки, ние имаме малко на склад, но скоро ще свършат. Преди няколко месеца имаше при по-нормални търговци и беше 50 долара, сега някъде му искат по 150, и се намира при разни тайванци с неизвестна репутация. Тоя път е ясен и не е мой проблем - има си хора да търсят, да се пазарят. Моят въпрос е от по-друго естество - какви алтернативи има да се направи тоя бридж, например в FPGA? Говорим за pcie 1.0, най-простия 1x режим е достатъчен. Не ни е по силите да се борим in-house и си мисля че ни трябва подизпълнител с опит в тая област. Най-добре в БГ, но не е проблем да е отдалечено, стига да стане работата. Трябва да е проверено решение с достатъчно добра поддръжка под линукс - в смисъл, да си тичат там DMA-та и каквото друго има. Целта е да изкормим PLX-а (и актел-а евентуално) и да присадим някакво FPGA, запазвайки експреса отгоре и паралелния бъс с 4 отделни зони (чип селекта). Всъщност, има няколко "китайски" такива бриджове - на asix, и на wch май. Никой от тях не е съвсем подходящ - в смисъл, няма такъв с 32-битов бъс - евентуално можем да пуснен два отделни експреса към два отделни бриджа за повече скорост, ама почва да става какафония. Търся контакти на хора/фирми, които могат да го свършат, както и общи размисли по темата - на коя фирма матриците са най-подходящи, други алтернативи за asic, които не съм открил още и тем подобни. |
|
| Автор: | nik [ Чет Май 20, 2021 9:35 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
далеч съм от тия технологии, незнам дали ще ти свърши работа, но скоро разглеждах сайта на диодите и видях че имат разни неща за пци-е, като това примерно https://www.diodes.com/products/connect ... i-bridges/ |
|
| Автор: | al_at [ Чет Май 20, 2021 9:53 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
И Texas Instruments имат PCIe към PCI bridge: https://www.ti.com/product/XIO2001 Не знам дали върши работа. Има го за 11.05 лева в Mouser: https://www.mouser.bg/ProductDetail/Tex ... beBQ%3D%3D И Renesas има такива чипове, но всичките са obsolete, явно излизат от този бизнес: https://www.renesas.com/us/en/products/ ... pci-bridge https://www.renesas.com/us/en/products/ ... pci-bridge https://www.mouser.bg/Semiconductors/In ... ?P=1ywy47y |
|
| Автор: | gicho [ Чет Май 20, 2021 10:01 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
И аз тъкмо се загледах в тексаските - под 2 евро са, като гледам, и са активни. Точно xio2001 гледам. Намерих няколко мини-пциекспрес карти с него - например аналогови вход/изходи, което ме навежда на мисълта че има някаква идея в нещото. Сега, стигат само да pci, а оригиналния PLX има и втори бридж в кристала - от pci къл local bus. Но си струва да погледна в посоката от дву-чипово решение - т.е. нещо, което да врътне PCI към local bus (то и старото имаше един актел след PLX-а, така че не сме много далеко от оригинала). Това може да е много хитро като постановка - няма да има нужда от скъпо fpga със serdes за експреса. Хич не ми е ясна и на мен тая област, но добавям второ питане: - как да обърна pci към паралелен бъс евтино? cpld? готов чип? |
|
| Автор: | HCL [ Чет Май 20, 2021 10:26 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
PCIe е дебела работа, та дори Gen 1. Независимо дали ще вземеш Xilinx или Lattice - лицензът за контролера само ще ти излезе няколко хилядарки. Отделно FPGA-тата със подходящ SerDes са от порядъка на $50-200 парчето. Ако вземеш едно ECP5 може и доста по-евтино да минеш, но по-трудно се намират експрети с необходимия опит. Ако $150 да се запасите с чипове са проблем значи три трябват доста. В такъв случай бих потърсил някой който има опит с Lattice и техния PCIe, което по всяка вероятно значи да гледаш в чужбина, т.е. едно 20к евро бюджет минимум. Ако все още се интересуваш мога да разпитам. |
|
| Автор: | HCL [ Чет Май 20, 2021 10:29 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
Това горното е ако се решиш за single-chip solution. Аз не виждам къде е файдата от dual-chip, при все че това са чипове на по 10г, че и нагоре. Т.е. може да направиш redesign и да обявят EOL. Или всичко в едно ФПГА или се презапасявайте докато са по $150 парчето. |
|
| Автор: | miro_atc [ Пет Май 21, 2021 9:51 am ] | |||||||||
| Заглавие: | Re: Решение за бридж от pciexpress към local bus | |||||||||
Зависи от детайлите. PCI е доволно проста шина на хардуерно ниво. Навремето съм я реализирал с CPLD + 8051. Няма нищо сложно - арбитриране, четене, писане, плюс конфигурационни четения, евентуално бърстове ако се налага. Инфекция може да стане от следните детайли: 1) Синхронизация. PCI работи на собствен клок - първоначално беше 33MHz, пък AGP на 66MHz, после с новите релийзи май ги вдигаха. Не помня вече. Но въпросът е дали ще може директно да закачиш локал бъс устройството или ще трябва да буферираш, сменяш клок домейни и т.н. 2) Конфигурация - софтуерна и хардуерна. Хардуерната конфигурация се състои в раздаване на адреси. За разлика от локална шина, устройствата нямат предварително фикснати адреси. Мастера сканира шината (с конфигурационни четения), гледа какви устройства има и им раздава адреси. Нищо сложно, просто трябва да имплементираш няколко регистъра с които да казваш от колко адресни области се нуждаеш и после като ти ги набият да отговаряш на тия адреси. Софтуерната конфигурация също не е ракетно инженерство. По стандарт трябва да имаш configuration ROM, който е със същия стандарт като BIOS. В тоя ROM описваш що за устройство си. Може да имаш код, както примерно видео картите, а може и да нямаш. Всичко това е важно само заради ОС-а. Едно време дето се викаше през DOS промта можеше да достъпваш PCI шината, да си я сканираш сам ако искаш. Да си адресираш устройствата и т.н. Мисля че под лайнукс това все още е възможно. Но под бозата доколкото знам не е толкова просто. Демек ако бозата не то разбере конфигурейшън рома и не ти инсталира правилния драйвер може и да е проблем твоя софтуер да си приказва с твоите устройства. От тая гледна точка може да се наложи да правиш гимнастики. Иначе ако си имаш достъп до PCI шината може да теглиш една майна и на бозите и на ромите... Та накратко - най-простия вариант, ако не се налагат синхронизации, мултиплексирания и т.н. може директно да си вържеш двете шини. И само контролните сигнали (плюс адресите) да прекараш през едно CPLD. Но и в най-тежкия вариант, т.е. да синхронизираш клоци, мултиплексираш адреси/данни, да сменяш нива и т.н. да имаш ромчета и т.н. не изисква кой знае колко. Да кажем среден клас ФПГА от порядъка на 10$. |
||||||||||
| Автор: | HCL [ Пет Май 21, 2021 9:52 am ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
С LPDDR е още по-сложно, от днес за утре обявявят EOL за старите генерации и всеки се спасява както може. Как не се намери някой да инвестира в производствени капацитети за тези технологии. Почвам да си мисля дали не си струва да се налеят малко пари в supply chain buffer-ing. С малко аналитика може да се селектират доста продукти за които ще има период на непокрито търсене. Чиста спекулация |
|
| Автор: | HCL [ Пет Май 21, 2021 11:58 am ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
Алтернативно както miro_аtc пише има модерни FPGA с необходимите SerDes и I/O чиито цени са достатъчно ниски за да позволят развоя на алтернативни прдукти, които да бъдат предложени като дългосрочно решение на EOL проблема. В Бавария има редица малки и средни фирми, които биха изслушали с интерест подна оферта. Много актуална тема и такава с добър бизнес потенциал. |
|
| Автор: | miro_atc [ Пет Май 21, 2021 2:40 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
Би било по-елегантно без бридж, но трябва да се провери. Аз отдавна не съм се занимал с фпга и не знам какво е достъпно. Навремето за PCIe искаха платена среда, само гол SERDEC беше достъпен във фрее версиите. То сигурно може и сам да си напишеш IP-to, ама ще по-трудно да се подкара. Докато класическият PCI дет се вика и с пробник се дебъгва |
|
| Автор: | HCL [ Пет Май 21, 2021 3:40 pm ] | |||||||||
| Заглавие: | Re: Решение за бридж от pciexpress към local bus | |||||||||
Все още е така, както при Xiling така и при Lattice. За Алтера не съм сигурен, там Интел може да са се намесили с цел да си рекламират OneAPI-то. Иначе PCIe не е никак за подценяване. То едното AXI ако го направиш както трябва в съответсвтие със стандарта не е никак лесна работа, INC/FIXED bursts, outstandings, uniq AxID, downsizing/upsizing, buffarables etc.. уж прост бъс, но има хиляди места на които може да се издъни човек. А ако знаеш в корпоративния свят на какви фалове съм се нагледал при дизайн на значително по-тривиални неща като MIPI RFFE и SPMI интерфейси... |
||||||||||
| Автор: | MYXATA [ Пет Май 21, 2021 3:41 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
Е то и има вградени лот.анашизатори в повечето фпга... Най трудното е човек да напише какво точно се иска... ТТЗ с две думи.... |
|
| Автор: | HCL [ Пет Май 21, 2021 3:49 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
То има ама упреш ли до ChipScope и подобните му инструменти за дебъг, има някакъв фундаментален пропуск в концепцията за верификация. За мен логическите анализатори са само ако ножа стигне до кокъла. Иначе подобно задание е идеално от гледна точка на спецификация на клиента - "трябва ми чип, който прави същото като чип Х и да е пиново съвместим". |
|
| Автор: | gicho [ Пет Май 21, 2021 4:27 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
Чак пин-съвместим не съм искал |
|
| Автор: | HCL [ Пет Май 21, 2021 4:52 pm ] |
| Заглавие: | Re: Решение за бридж от pciexpress към local bus |
Стига да имаш място на платката (хоризонтално или вертикално) става лесно - multi-chip module on a PCB, като FPGA-то може де е единствения чип |
|
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|