Jump to content

    
Sign in to follow this  
xxxmatrixxx

IP Core Can 2.0В c Avalon-MM(Avalon-ST)

Recommended Posts

Здравствуйте, уважаемые форумчане

Возникла необходимость использования Can шины в проекте на Cyclone4, я почему-то был уверен, что есть IP Core Can<->Avalon-MM(Avalon-ST), но такой коры в свободном доступе нет

может есть у кого рабочая IP Core Can<->Avalon-MM(Avalon-ST), чтобы можно было ее использовать в QSYS в связке с NIOS2?

спасибо, буду рад любой помощи

 

Share this post


Link to post
Share on other sites

Может есть у кого Can 2.0B под другую шину(например, AXI от Xilinx) с исходниками, желательно на veriloge?

кто-нибудь использовал Can Protocol Controller с OpenCores, насколько верно отрабатывает данный модуль, и есть ли на него описание у кого-нибудь, чтобы по коду не копаться?

Share this post


Link to post
Share on other sites
On 6/18/2020 at 6:31 PM, yes said:

Can 2.0B есть на тех же опенкоресах под wishbone на верилоге

у gaisler-а в grlib есть этого же опенкоресного интеграция в AHB (grlib) на VHDL

я именно его и скачал, переделал wishbone  под avalon-mm, сейчас смотрю по коду карту регистров этой коры

а насколько верно данная кора отрабатывает? есть ли опыт использования ее?

Share this post


Link to post
Share on other sites

вставлял в пару АЗИКов - работает

не знаю проходило ли это ядро настоящее BOSH тестирование, но продукция применялось в автомобилях (я не сильно в стандартах разбираюсь, но не самый труЪ автомотив - там требуется очень много специфики в аналоговой части АЗИКа, поэтому заведомо не делалось, а для каких-то вспомогательных устройств)

 

можно доку на SJA1000 посмотреть. это клон по программной модели.

Share this post


Link to post
Share on other sites
43 minutes ago, yes said:

вставлял в пару АЗИКов - работает

не знаю проходило ли это ядро настоящее BOSH тестирование, но продукция применялось в автомобилях (я не сильно в стандартах разбираюсь, но не самый труЪ автомотив - там требуется очень много специфики в аналоговой части АЗИКа, поэтому заведомо не делалось, а для каких-то вспомогательных устройств)

 

можно доку на SJA1000 посмотреть. это клон по программной модели.

спасибо большое, буду копать)))

Share this post


Link to post
Share on other sites
On 6/22/2020 at 1:26 PM, yes said:

вставлял в пару АЗИКов - работает

всёже предположу, что версия от gaisler-а в grlib  и версия с опенкорз - разные, хотя и версия гаислер основывается на тех же исходниках от Igor Mohor, но скорее всего в коммерческой поставке grlib вычищены баги.

Мы брали ОС версию в надежде сделать что-то работоспособное, но в итоге практически полностью переписали (была задача вместо SJA1000, от которого плевавись и наши программисты и заказчик прикрутить регистровую модель моторолы - ну и попутно на VIP CAN вылезла пачка багов самого ядра CAN, что без тотальной правки сложно было решить).

 

Share this post


Link to post
Share on other sites
7 hours ago, Doka said:

всёже предположу, что версия от gaisler-а в grlib  и версия с опенкорз - разные, хотя и версия гаислер основывается на тех же исходниках от Igor Mohor, но скорее всего в коммерческой поставке grlib вычищены баги.

Мы брали ОС версию в надежде сделать что-то работоспособное, но в итоге практически полностью переписали (была задача вместо SJA1000, от которого плевавись и наши программисты и заказчик прикрутить регистровую модель моторолы - ну и попутно на VIP CAN вылезла пачка багов самого ядра CAN, что без тотальной правки сложно было решить).

 

я брал версию из grlib, но когда сверял с опенкоресовской, то видел только отличия в протаскивании памятей на топ уровень (это у Гейслера некая платформозависимость добавляется в VHDL). и хорошего VIP CAN не было - сами писали из своего понимания, а в железе багов не выявили (поднимали на нем какие-то J1939 и opencan - но в протоколах высокого уровня я могу путаться, делал не я и давно уже) 

не 100% уверен в работоспособности опенкоресовского IP, но исправлений функционала не видел. то есть посмотрите в grlib (diff не сложно сделать жи) - вдруг я путаю, но лучше добыть какое-то VIP и им погонять опенкоресовский CAN

линуксный драйвер от SJA1000 по словам программистов тоже работал (говорю про grlib и LEON3/4 и драйвер, по-моему, из его же linux-а)

 

Share this post


Link to post
Share on other sites

@yes

насколько помню основная часть багов была связана с отработкой исключительных ситуаций на шине - т.е. на столе в связке с другим "здоровым" КАНом в МК странностей не заметить.

(это помимо тех багов, которые за последнее десятилетие были заведены на ОС https://opencores.org/projects/can/bugtracker  SVN Updated: Mar 10, 2009 )

 

PS: претензий к драйверу SJA1000 у заказчика не было, были претензии к "полноценности" программной модели SJA1000

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this