реклама на сайте
подробности

 
 
> PCIe
Methane
сообщение Feb 12 2010, 03:04
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Спрошу сразу. Можно ли достоверно промоделировать на моделсиме устройство на PCIe, ничего не покупая и не тратя на это все несколько месяцев? Хочется написать, убедится что BARы правильно прописаны, что PnP и прочая беда работает, прогнать симуляцию разных вариантов чтения/записи из PCIe, генерации прерываний, убедится что пашет DMA, Burstы, что все работает в 64 бита, поиграться включая/отключая lan-ы, посмотреть какая для этого нужна ПЛИСина, может быть и hotplug проверить итд. И уже потом решать вопросы с покупкой чего либо. И заодно, если покупать megaCore PCIe, то сколько это может стоить? (просто порядок цен)? Килобакс, мегабакс?

Если да, то что откуда качать?
Go to the top of the page
 
+Quote Post
7 страниц V   1 2 3 > »   
Start new topic
Ответов (1 - 92)
DmitryR
сообщение Feb 12 2010, 06:36
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Вопрос из серии "как получить все, не делая ничего". Попробуем ответить.

Начиная с конца: PCIe endpoint реализован аппаратно в большинстве современных FPGA, поэтому ничего не стоит.

Что же касается симуляции - devkits именно потому пользуются таким спросом, что дают возможность быстро и недорого проверить дизайн. Например Xilinx SP605 позволит вам за примерно $700 (цена двух недель работы инженера не считая налогов) не искать бесплатные модели PCIe хоста и потом разбираться с их глюками, а вставить ваш дизайн в живой компьютер, запустить с одной стороны PCIScope, с другой стороны ChipScope, и не тратя месяцы все отладить.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 12 2010, 07:40
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(DmitryR @ Feb 12 2010, 08:36) *
Вопрос из серии "как получить все, не делая ничего". Попробуем ответить.

Начиная с конца: PCIe endpoint реализован аппаратно в большинстве современных FPGA, поэтому ничего не стоит.

Что же касается симуляции - devkits именно потому пользуются таким спросом, что дают возможность быстро и недорого проверить дизайн. Например Xilinx SP605 позволит вам за примерно $700 (цена двух недель работы инженера не считая налогов) не искать бесплатные модели PCIe хоста и потом разбираться с их глюками, а вставить ваш дизайн в живой компьютер, запустить с одной стороны PCIScope, с другой стороны ChipScope, и не тратя месяцы все отладить.

Про devkit, понятно. А в моделсиме? Я в свое время отлаживал обмен с SDRAM, скачав ее вериложную модель, и подключив в проект. А сейчас чего-то не могу найти того же для PCIе.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Feb 12 2010, 11:08
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Вы прежде, чем искать подумайте, как эта модель могла бы выглядеть. Особенно в части PnP: для этого туда пришлось бы половину винды переписать.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 12 2010, 11:51
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(DmitryR @ Feb 12 2010, 13:08) *
Вы прежде, чем искать подумайте, как эта модель могла бы выглядеть. Особенно в части PnP: для этого туда пришлось бы половину винды переписать.

Хорошо что в Альтере об этом не знают. Они не граматные.

Код
# Time: 0  Instance: artempcieee_chaining_testbench.ep.epmap.serdes.artempcieee_serdes_alt4gxb_bjea_c
omponent.tx_pll0
# Note : CMU PLL is reset
# Time: 0  Instance: artempcieee_chaining_testbench.ep.epmap.serdes.artempcieee_serdes_alt4gxb_bjea_c
omponent.rx_cdr_pll0
#  Note : Stratix GX PLL locked to incoming clock
# Time: 40000  Instance: artempcieee_chaining_testbench.ep.epmap.refclk_to_250mhz.altpll_component.pll0
#  Note : Stratix II PLL locked to incoming clock
# Time: 48000  Instance: artempcieee_chaining_testbench.rp.rp.niilO0i.pll1
#  Note : Stratix GX PLL locked to incoming clock
# Time: 56000  Instance: artempcieee_chaining_testbench.ep.epmap.pll_250mhz_to_500mhz.altpll_component.pl
l0
# INFO:             464 ns Completed initial configuration of Root Port.                                                      
# INFO: Core Clk Frequency: 125.00 Mhz
# INFO:            3660 ns  RP LTSSM State: DETECT.ACTIVE                                                                      
# INFO:            3780 ns  EP LTSSM State: DETECT.ACTIVE                                                                      
# INFO:            3828 ns  EP LTSSM State: POLLING.ACTIVE                                                                    
# INFO:            6908 ns  RP LTSSM State: POLLING.ACTIVE                                                                    
# INFO:            9036 ns  RP LTSSM State: POLLING.CONFIG                                                                    
# INFO:            9364 ns  EP LTSSM State: POLLING.CONFIG                                                                    
# INFO:           10516 ns  EP LTSSM State: CONFIG.LINKWIDTH.START                                                            
# INFO:           10636 ns  RP LTSSM State: CONFIG.LINKWIDTH.START                                                            
# INFO:           11284 ns  EP LTSSM State: CONFIG.LINKWIDTH.ACCEPT                                                            
# INFO:           11804 ns  RP LTSSM State: CONFIG.LINKWIDTH.ACCEPT                                                            
# INFO:           12124 ns  RP LTSSM State: CONFIG.LANENUM.WAIT                                                                
# INFO:           12756 ns  EP LTSSM State: CONFIG.LANENUM.WAIT                                                                
# INFO:           12948 ns  EP LTSSM State: CONFIG.LANENUM.ACCEPT                                                              
# INFO:           13084 ns  RP LTSSM State: CONFIG.LANENUM.ACCEPT                                                              
# INFO:           13404 ns  RP LTSSM State: CONFIG.COMPLETE                                                                    
# INFO:           13860 ns  EP LTSSM State: CONFIG.COMPLETE                                                                    
# INFO:           15012 ns  EP LTSSM State: CONFIG.IDLE                                                                        
# INFO:           15132 ns  RP LTSSM State: CONFIG.IDLE                                                                        
# INFO:           15244 ns  RP LTSSM State: L0                                                                                
# INFO:           15476 ns  EP LTSSM State: L0                                                                                
# INFO:           18264 ns                                                                                                    
# INFO:           18264 ns Configuring Bus 001, Device 001, Function 00                                                        
# INFO:           18264 ns   EP Read Only Configuration Registers:                                                            
# INFO:           18264 ns                 Vendor ID: 1172                                                                    
# INFO:           18264 ns                 Device ID: 0004                                                                    
# INFO:           18264 ns               Revision ID: 01                                                                      
# INFO:           18264 ns                Class Code: FF0000                                                                  
# INFO:           18264 ns       Subsystem Vendor ID: 1172                                                                    
# INFO:           18264 ns              Subsystem ID: 0004                                                                    
# INFO:           18264 ns             Interrupt Pin: INTA# used                                                              
# INFO:           18264 ns                                                                                                    
# INFO:           19272 ns   PCI MSI Capability Register:                                                                      
# INFO:           19272 ns    64-Bit Address Capable: Supported                                                                
# INFO:           19272 ns        Messages Requested:  4                                                                      
# INFO:           19272 ns                                                                                                    
# INFO:           24376 ns   EP PCI Express Link Status Register (1011):                                                      
# INFO:           24376 ns     Negotiated Link Width: x1                                                                      
# INFO:           24376 ns         Slot Clock Config: System Reference Clock Used                                              
# INFO:           25540 ns  RP LTSSM State: RECOVERY.RCVRLOCK                                                                  
# INFO:           25964 ns  EP LTSSM State: RECOVERY.RCVRLOCK                                                                  
# INFO:           26492 ns  EP LTSSM State: RECOVERY.RCVRCFG                                                                  
# INFO:           26660 ns  RP LTSSM State: RECOVERY.RCVRCFG                                                                  
# INFO:           27812 ns  RP LTSSM State: RECOVERY.IDLE                                                                      
# INFO:           28108 ns  EP LTSSM State: RECOVERY.IDLE                                                                      
# INFO:           28188 ns  EP LTSSM State: L0                                                                                
# INFO:           28340 ns  RP LTSSM State: L0                                                                                
# INFO:           29344 ns        Current Link Speed: 2.5GT/s                                                                  
# INFO:           29344 ns                                                                                                    
# INFO:           30368 ns   EP PCI Express Link Control Register (0040):                                                      
# INFO:           30368 ns       Common Clock Config: System Reference Clock Used                                              
# INFO:           30368 ns                                                                                                    
# INFO:           31952 ns                                                                                                    
# INFO:           31952 ns   EP PCI Express Capabilities Register (0001):                                                      
# INFO:           31952 ns        Capability Version: 1                                                                        
# INFO:           31952 ns                 Port Type: Native Endpoint                                                          
# INFO:           31952 ns                                                                                                    
# INFO:           31952 ns   EP PCI Express Device Capabilities Register (00008000):                                          
# INFO:           31952 ns     Max Payload Supported: 128 Bytes                                                                
# INFO:           31952 ns              Extended Tag: Not Supported                                                            
# INFO:           31952 ns    Acceptable L0s Latency: Less Than 64 ns                                                          
# INFO:           31952 ns    Acceptable L1  Latency: Less Than 1 us                                                          
# INFO:           31952 ns          Attention Button: Not Present                                                              
# INFO:           31952 ns       Attention Indicator: Not Present                                                              
# INFO:           31952 ns           Power Indicator: Not Present                                                              
# INFO:           31952 ns                                                                                                    
# INFO:           31952 ns   EP PCI Express Link Capabilities Register (0103F411):                                            
# INFO:           31952 ns        Maximum Link Width: x1                                                                      
# INFO:           31952 ns      Supported Link Speed: 2.5GT/s                                                                  
# INFO:           31952 ns                 L0s Entry: Supported                                                                
# INFO:           31952 ns                 L1  Entry: Not Supported                                                            
# INFO:           31952 ns          L0s Exit Latency: More than 4 us                                                          
# INFO:           31952 ns          L1  Exit Latency: More than 64 us                                                          
# INFO:           31952 ns               Port Number: 01                                                                      
# INFO:           31952 ns   Surprise Dwn Err Report: Not Supported                                                            
# INFO:           31952 ns    DLL Link Active Report: Not Supported                                                            
# INFO:           31952 ns                                                                                                    
# INFO:           33136 ns                                                                                                    
# INFO:           33136 ns   EP PCI Express Device Control Register (0010):                                                    
# INFO:           33136 ns   Error Reporting Enables: 0                                                                        
# INFO:           33136 ns          Relaxed Ordering: Enabled                                                                  
# INFO:           33136 ns               Max Payload: 128 Bytes                                                                
# INFO:           33136 ns              Extended Tag: Disabled                                                                
# INFO:           33136 ns          Max Read Request: 128 Bytes                                                                
# INFO:           33136 ns                                                                                                    
# INFO:           33136 ns   EP PCI Express Device Status Register (0000):                                                    
# INFO:           33136 ns                                                                                                    
# INFO:           34160 ns   EP PCI Express Virtual Channel Capability:                                                        
# INFO:           34160 ns          Virtual Channel: 1                                                                        
# INFO:           34160 ns          Low Priority VC: 0                                                                        
# INFO:           34160 ns                                                                                                    
# INFO:           39136 ns                                                                                                    
# INFO:           39136 ns BAR Address Assignments:                                                                            
# INFO:           39136 ns BAR    Size       Assigned Address  Type                                                            
# INFO:           39136 ns ---    ----       ----------------                                                                  
# INFO:           39136 ns BAR1:0 256 MBytes 00000001 00000000 Prefetchable                                                    
# INFO:           39136 ns BAR2   Disabled                                                                                    
# INFO:           39136 ns BAR3   Disabled                                                                                    
# INFO:           39136 ns BAR4   Disabled                                                                                    
# INFO:           39136 ns BAR5   Disabled                                                                                    
# INFO:           39136 ns ExpROM Disabled                                                                                    
# INFO:           41120 ns                                                                                                    
# INFO:           41120 ns Completed configuration of Endpoint BARs.                                                          
# WARNING:        42288 ns Unable to find a 256B BAR to setup the chaining DMA DUT; skipping test.                            
# INFO:           42288 ns ---------                                                                                          
# INFO:           42288 ns TASK:downstream_loop                                                                                
# INFO:           43696 ns Passed: 0004 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           45136 ns Passed: 0008 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           46608 ns Passed: 0012 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           48096 ns Passed: 0016 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           49640 ns Passed: 0020 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           51240 ns Passed: 0024 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           52824 ns Passed: 0028 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           54456 ns Passed: 0032 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           56160 ns Passed: 0036 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# INFO:           57872 ns Passed: 0040 same bytes in BFM mem addr 0x00000040 and 0x00000840                                  
# SUCCESS: Simulation stopped due to successful completion!
# Break in Function ebfm_log_stop_sim at ../../common/testbench//altpcietb_bfm_log.v line 96
# Stopped at ../../common/testbench//altpcietb_bfm_log.v line 96
#  quit


Но к этому бы инструкцию по-подробнее.

Сообщение отредактировал Methane - Feb 12 2010, 11:56
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 12 2010, 13:13
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Народ, если взять ПЛИС с PCIe коркой внутри, то никаких софт-коре покупать не надо?
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 12 2010, 13:17
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



для ксалинкса не нужно.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 12 2010, 13:53
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Feb 12 2010, 15:17) *
для ксалинкса не нужно.

Я на Альтеру больше нацелен. По идее должно быть также. Тоесть плисина за $500 и больше ничего не нада.
Go to the top of the page
 
+Quote Post
max77
сообщение Feb 12 2010, 14:02
Сообщение #9


Участник
*

Группа: Свой
Сообщений: 67
Регистрация: 16-03-06
Из: Днепропетровск
Пользователь №: 15 307



Для Xilinx ядро до х8 вроде бы бесплатное. Это было для Viretx-5 семейства. К старым версиям ПЛИС ядро было покупное.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 12 2010, 14:20
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(max77 @ Feb 12 2010, 16:02) *
Для Xilinx ядро до х8 вроде бы бесплатное. Это было для Viretx-5 семейства. К старым версиям ПЛИС ядро было покупное.

Ну не хочется мне на Ксилинкс переучиваться. И смысла нет. Я где-то слышал (а может мне это и приснилось) что для Альтер, где PCIe уже есть, ничего покупать не надо.

Народ, на PCI есть SMBus. Ктонить по ней пробовал ПЛИС грузить?
Go to the top of the page
 
+Quote Post
des00
сообщение Feb 14 2010, 07:21
Сообщение #11


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(DmitryR @ Feb 12 2010, 05:08) *
Вы прежде, чем искать подумайте, как эта модель могла бы выглядеть. Особенно в части PnP: для этого туда пришлось бы половину винды переписать.

Кстати у ментора в квесте есть готовый PCI-E чеккер, судя по описанию очень даже функциональный. Конечно это не драйвер PCI-E, а чеккер, но тем не менее. Так что думаю что модели должны быть %)


--------------------
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 15 2010, 11:25
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(des00 @ Feb 14 2010, 09:21) *
Кстати у ментора в квесте есть готовый PCI-E чеккер, судя по описанию очень даже функциональный. Конечно это не драйвер PCI-E, а чеккер, но тем не менее. Так что думаю что модели должны быть %)

Ментор кваста-сим?

Блин, примере от альтеры, черт голову сломит! Не могли сделать один проект, где только PCI, и не мешать в него DDR2 и прочее.

Вот бы чего такого почитать, типа RTL, но с пояснением, и чтобы PCI было в одной стороне а nCONFIG в другой.
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 15 2010, 11:42
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Feb 12 2010, 17:20) *
Ну не хочется мне на Ксилинкс переучиваться. И смысла нет. Я где-то слышал (а может мне это и приснилось) что для Альтер, где PCIe уже есть, ничего покупать не надо.

Народ, на PCI есть SMBus. Ктонить по ней пробовал ПЛИС грузить?



А к SMBus можно получить доступ в компе? И зачем грузить ПЛИС таким образом? Чем джитаг не устраивает?
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 15 2010, 11:46
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Feb 15 2010, 13:42) *
А к SMBus можно получить доступ в компе?

А чего нет? LInux же вычитывает таким образом температуру процессора итд. Но SMBus не подходит по другим причинам.
Цитата
И зачем грузить ПЛИС таким образом? Чем джитаг не устраивает?

Тем что хотелось, воткнули плату, загрузили в нее прошивку через SMBus, она определилась как PCIe и поехала работать. Захотели, сменили прошивку даже не перезагружая комп.
Go to the top of the page
 
+Quote Post
des00
сообщение Feb 15 2010, 12:03
Сообщение #15


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Methane @ Feb 15 2010, 05:25) *
Ментор кваста-сим?


C:\questasim\docs\pdfdocs\questa_monitors_ref.pdf -> Chapter 13 PCI Express ->
Цитата
The QVL PCI Express monitor can be instantiated in a standard configuration for checking PCI Express implementations. It also can be instantiated in a PIPE configuration for checking PHY Interface for PCI Express implementations. The monitor works in both Gen1 and Gen2 mode and can be instantiated separately in both mode.


--------------------
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 15 2010, 12:59
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Feb 15 2010, 14:46) *
А чего нет? LInux же вычитывает таким образом температуру процессора итд. Но SMBus не подходит по другим причинам.

Не знаю, вот и спрашиваю. Нет под рукой каких нибудь ссылок про это?

Цитата(Methane @ Feb 15 2010, 14:46) *
Тем что хотелось, воткнули плату, загрузили в нее прошивку через SMBus, она определилась как PCIe и поехала работать. Захотели, сменили прошивку даже не перезагружая комп.

При заливке новой прошивки в ПЛИС будет утеряно содержимое конфигурационных регистров и плата просто перестанет видиться ОС. Все равно придется комп перегружать, или заново оборудование искать. А в ПЗУ можно и по PCIе заливать и потом ПЛИС рестартануть. Я так и делал.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 15 2010, 13:16
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(des00 @ Feb 15 2010, 14:03) *
C:\questasim\docs\pdfdocs\questa_monitors_ref.pdf -> Chapter 13 PCI Express ->

Стоп, а до сериализатора его можно подключить? Там где последовательная 2.5ггц идет?

Цитата(disel @ Feb 15 2010, 14:59) *
Не знаю, вот и спрашиваю. Нет под рукой каких нибудь ссылок про это?

LInux SMBus гуглится на раз.


Цитата
При заливке новой прошивки в ПЛИС будет утеряно содержимое конфигурационных регистров и плата просто перестанет видиться ОС. Все равно придется комп перегружать, или заново оборудование искать. А в ПЗУ можно и по PCIе заливать и потом ПЛИС рестартануть. Я так и делал.

в PCIe заявлена поддержка hotplugа. К примеру express Card, там внутри может быть и PCIe 1x. Правда SMBusа нет. Так что мне кажется, что можно разобраться.
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 15 2010, 13:39
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Feb 15 2010, 16:16) *
в PCIe заявлена поддержка hotplugа. К примеру express Card, там внутри может быть и PCIe 1x. Правда SMBusа нет. Так что мне кажется, что можно разобраться.


Не понял в чем разобраться.

Цитата(Methane @ Feb 15 2010, 16:16) *
LInux SMBus гуглится на раз.


А до джитага линукс добраться не может? Джитаг тоже в PCIe разъеме есть.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 15 2010, 13:41
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Feb 15 2010, 15:37) *
Не понял в чем разобраться.

PRSNT#1 Hot plug presence detect
WAKE# Link Reactivation
Что они значат?



Цитата(disel @ Feb 15 2010, 15:39) *
А до джитага линукс добраться не может? Джитаг тоже в PCIe разъеме есть.

Не знаю.
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 15 2010, 13:49
Сообщение #20


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Feb 15 2010, 16:41) *
PRSNT#1 Hot plug presence detect
WAKE# Link Reactivation
Что они значат?



The WAKE# signal is an open drain, active low signal that is driven low by a PCI Exp
component to reactivate the PCI Express slot’s main power rails and reference clocks.

Карточку будит. Подробности лучше в стандарте читать.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 15 2010, 13:57
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Feb 15 2010, 15:49) *
The WAKE# signal is an open drain, active low signal that is driven low by a PCI Exp
component to reactivate the PCI Express slot’s main power rails and reference clocks.

Карточку будит. Подробности лучше в стандарте читать.

Тут как раз стандарт мало что скажет. Так как много что есть в стандарте, не реализовано. Гугление по PCIe Hotplug дало противоречивые результаты. Скорее всего если метод и есть, то он глюкавый.
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 15 2010, 14:08
Сообщение #22


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Честно говоря про хотплуг не заморачивался, как то совсем не нужно было.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 15 2010, 14:20
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Feb 15 2010, 16:08) *
Честно говоря про хотплуг не заморачивался, как то совсем не нужно было.

Теоретически, позволяет заливать прошивку в ПЛИС, прямо из драйвера. Поэтому и хочется заморочится. Хотя и на уровне "авось получится".
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 15 2010, 14:37
Сообщение #24


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



В конфигурационное ПЗУ я и так из драйвера пишу безо всякого хотплуга. А если через SMBus прошивку налету грузить - так это все безотносительно PCI. Вроде ничего сложно там быть не должно.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 15 2010, 14:51
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Feb 15 2010, 16:37) *
В конфигурационное ПЗУ я и так из драйвера пишу безо всякого хотплуга. А если через SMBus прошивку налету грузить - так это все безотносительно PCI. Вроде ничего сложно там быть не должно.

В конфигурационную флешку, то понятно. Но хотелось бы, чтобы к примеру загрузилась первоначальная прошивка, прошла энумерация. Загрузился драйвер, в какое-то внешнее ОЗУ подключенное к ПЛИС загрузил новую прошивку, что-то на плате перегрузило ПЛИС, прошивкой из внешнего ОЗУ, прошла новая енумерация, драйвер стал работать уже с новой прошивкой в ПЛИС.

Но это в глубоком проекте. Я пока с формальной вертификацией не могу разобраться.
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 16 2010, 06:12
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Feb 15 2010, 17:51) *
В конфигурационную флешку, то понятно. Но хотелось бы, чтобы к примеру загрузилась первоначальная прошивка, прошла энумерация. Загрузился драйвер, в какое-то внешнее ОЗУ подключенное к ПЛИС загрузил новую прошивку, что-то на плате перегрузило ПЛИС, прошивкой из внешнего ОЗУ, прошла новая енумерация, драйвер стал работать уже с новой прошивкой в ПЛИС.

Но это в глубоком проекте. Я пока с формальной вертификацией не могу разобраться.


Все это возможно прямо через PCIe безо всякого SMBus-а. Добавить только к ПЛИСине какую нибудь мелкую CPLD, которая будет загрузкой управлять. Насчет хотплуга не знаю, попробую сегодня прошивку залить и запустить поиск оборудования. Чето всегда после перезагрузки тестировал, может зря.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 16 2010, 06:34
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Feb 16 2010, 08:12) *
Все это возможно прямо через PCIe безо всякого SMBus-а. Добавить только к ПЛИСине какую нибудь мелкую CPLD, которая будет загрузкой управлять.

В том-то и фишка. Нужно потом сказать "новое устройство появилось, старое исчезло". А CPLD или однокристалку какую, вопрос уже десятый.
Цитата
Насчет хотплуга не знаю, попробую сегодня прошивку залить и запустить поиск оборудования. Чето всегда после перезагрузки тестировал, может зря.

Интересно было бы, включить, залить прошивку через JTAG, потом залить прошивку еще раз.
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 16 2010, 13:18
Сообщение #28


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Feb 16 2010, 09:34) *
Интересно было бы, включить, залить прошивку через JTAG, потом залить прошивку еще раз.


Уехал в командировку, в конце неделе проверю.
Go to the top of the page
 
+Quote Post
Koluchiy
сообщение Feb 17 2010, 16:16
Сообщение #29


Знающий
****

Группа: Свой
Сообщений: 972
Регистрация: 12-04-09
Из: Москва
Пользователь №: 47 543



Цитата(max77 @ Feb 12 2010, 17:02) *
Для Xilinx ядро до х8 вроде бы бесплатное. Это было для Viretx-5 семейства. К старым версиям ПЛИС ядро было покупное.


Не подскажете, чего за ядро бесплатное для Virtex-5?
Как называется, где брать...
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 17 2010, 18:33
Сообщение #30


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(Koluchiy @ Feb 17 2010, 18:16) *
Не подскажете, чего за ядро бесплатное для Virtex-5?
Как называется, где брать...

Оно не бесплатное. За него платится при покупки мелкосхемы.
Go to the top of the page
 
+Quote Post
Koluchiy
сообщение Feb 17 2010, 20:22
Сообщение #31


Знающий
****

Группа: Свой
Сообщений: 972
Регистрация: 12-04-09
Из: Москва
Пользователь №: 47 543



Можете читать мой вопрос как "за него не надо доплачивать".

Сообщение отредактировал Koluchiy - Feb 17 2010, 20:23
Go to the top of the page
 
+Quote Post
cioma
сообщение Feb 19 2010, 12:16
Сообщение #32


Профессионал
*****

Группа: Свой
Сообщений: 1 226
Регистрация: 19-06-04
Из: Беларусь
Пользователь №: 65



http://www.altera.com/literature/po/ss-pciexpress.pdf
Go to the top of the page
 
+Quote Post
dsmv
сообщение Feb 25 2010, 15:50
Сообщение #33


Местный
***

Группа: Свой
Сообщений: 451
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 284



Цитата(Methane @ Feb 15 2010, 17:51) *
В конфигурационную флешку, то понятно. Но хотелось бы, чтобы к примеру загрузилась первоначальная прошивка, прошла энумерация. Загрузился драйвер, в какое-то внешнее ОЗУ подключенное к ПЛИС загрузил новую прошивку, что-то на плате перегрузило ПЛИС, прошивкой из внешнего ОЗУ, прошла новая енумерация, драйвер стал работать уже с новой прошивкой в ПЛИС.



Это реально. У меня PCI Express на ПЛИС Virtex 5: XC5VSX50T
Я написал небольшую программу которая сохраняет в файл на диске значение BAR0, BAR1;
После перезагрузки прошивки содержимое BAR0, BAR1 и COMMAND стирается. Программа их восстанавливает.
Это нормально работало на комьютере с chipset P45; Сейчас у меня компьютер с P55 и это уже не работает. Почему - не знаю.
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 25 2010, 17:19
Сообщение #34


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(dsmv @ Feb 25 2010, 17:50) *
Это реально. У меня PCI Express на ПЛИС Virtex 5: XC5VSX50T
Я написал небольшую программу которая сохраняет в файл на диске значение BAR0, BAR1;
После перезагрузки прошивки содержимое BAR0, BAR1 и COMMAND стирается. Программа их восстанавливает.
Это нормально работало на комьютере с chipset P45; Сейчас у меня компьютер с P55 и это уже не работает. Почему - не знаю.

А за время перезагрузки, RP не вешает на EP что "ошибка которую не удалось исправить"?
Go to the top of the page
 
+Quote Post
dsmv
сообщение Feb 27 2010, 10:50
Сообщение #35


Местный
***

Группа: Свой
Сообщений: 451
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 284



Цитата(Methane @ Feb 25 2010, 20:19) *
А за время перезагрузки, RP не вешает на EP что "ошибка которую не удалось исправить"?


Не знаю. А где это можно посмотреть ?
Go to the top of the page
 
+Quote Post
XVR
сообщение Feb 27 2010, 11:38
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Господа, прикиньте, сколько времени будет через SMBus загружаться прошивка? Там ведь не десятки мегагерц, даже не единицы. 100 KHz там всего wacko.gif (пусть даже 400 в PMBus, все равно не спасет)
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 27 2010, 14:08
Сообщение #37


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(XVR @ Feb 27 2010, 13:38) *
Господа, прикиньте, сколько времени будет через SMBus загружаться прошивка? Там ведь не десятки мегагерц, даже не единицы. 100 KHz там всего wacko.gif (пусть даже 400 в PMBus, все равно не спасет)

Прикидывал. Терпимо.
Go to the top of the page
 
+Quote Post
SiTi
сообщение Mar 29 2010, 17:49
Сообщение #38


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 21-01-10
Пользователь №: 54 970



Здравствуйте, можно я подключусь к дискуссии?
Точно такая же проблема у меня. Идея та же - нужно загрузить первоначальную прошивку, она по PCI-E заливает на флешку новую загрузку, ПЛИС рестартится, устройство переопределяется, всё работает под новой прошивкой.
Цитата(disel @ Feb 16 2010, 09:12) *
Все это возможно прямо через PCIe безо всякого SMBus-а. Добавить только к ПЛИСине какую нибудь мелкую CPLD, которая будет загрузкой управлять. Насчет хотплуга не знаю, попробую сегодня прошивку залить и запустить поиск оборудования. Чето всегда после перезагрузки тестировал, может зря.

Ну, насколько я понимаю, для управления загрузкой не нужна никакая CPLD, у xilinx есть MultiBoot и ICAP, которые под это заточены. Вообще никакого дополнительного обвеса к ПЛИС не понадобится.

У меня PCIe устройство, если плис перегрузить нагорячую, вообще нигде не видно после перезагрузки, не находится... Приходится перегружать компьютер. Надо будет попробовать сначала отключить устройство в диспетчере оборудования, а потом перегружать...

И ещё я не понял на счёт BAR0, BAR1 и т.д... Зачем записывать их значения и восстанавливать? Я вот этот абзац вообще что-то не понял...
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 29 2010, 18:22
Сообщение #39


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(SiTi @ Mar 29 2010, 19:49) *
Здравствуйте, можно я подключусь к дискуссии?
Точно такая же проблема у меня. Идея та же - нужно загрузить первоначальную прошивку, она по PCI-E заливает на флешку новую загрузку, ПЛИС рестартится, устройство переопределяется, всё работает под новой прошивкой.

Угу. На всё про все 0.2 секунды. Иначе, PC имеет полное право сказать "нет там ничего".

Цитата
Ну, насколько я понимаю, для управления загрузкой не нужна никакая CPLD, у xilinx есть MultiBoot и ICAP, которые под это заточены. Вообще никакого дополнительного обвеса к ПЛИС не понадобится.

Может быть, у хилых.
Цитата
У меня PCIe устройство, если плис перегрузить нагорячую, вообще нигде не видно после перезагрузки, не находится... Приходится перегружать компьютер. Надо будет попробовать сначала отключить устройство в диспетчере оборудования, а потом перегружать...

Под линухом, говорят ноужно загрузить специальный драйвер, тогда и хот-свап появится. у PCIe.


Цитата
И ещё я не понял на счёт BAR0, BAR1 и т.д... Зачем записывать их значения и восстанавливать? Я вот этот абзац вообще что-то не понял...

BAR0 - обычная память. BAR1 - память для таблицы дескрипторов для чайнинг-ПДП. Вы говорите, что вам нужно столько-то памяти для BAR0, столько-то памяти для BAR1 итд. Это для того что Альтера предлагает. А уж где эта память будет, решает BIOS или OS при загрузке.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 05:29
Сообщение #40


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(SiTi @ Mar 29 2010, 20:49) *
Ну, насколько я понимаю, для управления загрузкой не нужна никакая CPLD, у xilinx есть MultiBoot и ICAP, которые под это заточены. Вообще никакого дополнительного обвеса к ПЛИС не понадобится.

Ну например если прошивок больше четырех. А так конечно можно и ИКАПом.

У меня после прошивки на лету происходит следующее: данные в пространстве конфигурации читаются новые, но в БАРах нули. Плата соответственно не работает.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 05:36
Сообщение #41


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 30 2010, 07:29) *
Ну например если прошивок больше четырех. А так конечно можно и ИКАПом.

У меня после прошивки на лету происходит следующее: данные в пространстве конфигурации читаются новые, но в БАРах нули. Плата соответственно не работает.

Какая ось? Если линух то по идее pciehp.ko можно загрузить.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 06:01
Сообщение #42


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 30 2010, 08:36) *
Какая ось? Если линух то по идее pciehp.ko можно загрузить.


WINXP и Мандрива 2009. Поведение одинаковое. pciehp.ko загружен.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 06:09
Сообщение #43


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 30 2010, 08:01) *
WINXP и Мандрива 2009. Поведение одинаковое. pciehp.ko загружен.

Значит про загрузку прошивки прямо из драйвера придется забыть. sad.gif
Значит ПЛИС + CPLD + NOR память. sad.gif sad.gif sad.gif
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 06:16
Сообщение #44


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 30 2010, 09:09) *
Значит про загрузку прошивки прямо из драйвера придется забыть. sad.gif
Значит ПЛИС + CPLD + NOR память. sad.gif sad.gif sad.gif


Не стоит на мой опыт ориентироваться, поскольку задача хотплуга у меня не стояла. И честно говоря я даже в стандарте не успел про это почитать.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 06:25
Сообщение #45


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 30 2010, 08:16) *
Не стоит на мой опыт ориентироваться, поскольку задача хотплуга у меня не стояла. И честно говоря я даже в стандарте не успел про это почитать.

Дело не только в хотплаге. Дело в том что хотелось бы
1. Грузить прошивку прямо из драйвера.
2. Не перезагружать комп при каждой смене прошивки.

Да, а поставить плату в компютер, (пустую, без прошивки) а потом запрограммировать ее через JTAG, получается? Я читал что у народа работает, но тоже только один раз. Если сменить прошивку, не работает.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 07:00
Сообщение #46


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 30 2010, 09:25) *
Дело не только в хотплаге. Дело в том что хотелось бы
1. Грузить прошивку прямо из драйвера.
2. Не перезагружать комп при каждой смене прошивки.

Согласен, правильная идея.

Цитата(Methane @ Mar 30 2010, 09:25) *
Да, а поставить плату в компютер, (пустую, без прошивки) а потом запрограммировать ее через JTAG, получается? Я читал что у народа работает, но тоже только один раз. Если сменить прошивку, не работает.

Пустая плата через джитаг программируется нормально, косяков не было.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 07:15
Сообщение #47


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 30 2010, 09:00) *
Согласен, правильная идея.

Вот только как оказалось, не реализуемая. По идее.

Цитата
Пустая плата через джитаг программируется нормально, косяков не было.

Альтера говорит, что чтобы оно и работало потом, это должно произойти за 0.2 с с момента подачи питания.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 07:30
Сообщение #48


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 30 2010, 10:15) *
Альтера говорит, что чтобы оно и работало потом, это должно произойти за 0.2 с с момента подачи питания.


Наверное я не о том написал, вопроса не понял. Под программированием платы я понимал прошивку ПЗУ. Заливать же через джитаг в ПЛИС прошивку при старте не побывал. Да и смысла в этом нет. Альтера правильно говорит про 0,2 с. Стандарт PCIe говорит о том же. Залить прошивку за это время не реально.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 08:01
Сообщение #49


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 30 2010, 09:30) *
Наверное я не о том написал, вопроса не понял. Под программированием платы я понимал прошивку ПЗУ. Заливать же через джитаг в ПЛИС прошивку при старте не побывал. Да и смысла в этом нет. Альтера правильно говорит про 0,2 с. Стандарт PCIe говорит о том же. Залить прошивку за это время не реально.

Вот. Я читал, что если плата уже воткнута, и компьютер загружен, то если загрузить прошивку, то компьютер распознает, и правильно проинициализирует. Но если потом в плату прошивку перезагрузить, то правильно работать она уже не будет. Но по идее под линухом можно это обойти.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 08:39
Сообщение #50


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 30 2010, 11:01) *
Вот. Я читал, что если плата уже воткнута, и компьютер загружен, то если загрузить прошивку, то компьютер распознает, и правильно проинициализирует. Но если потом в плату прошивку перезагрузить, то правильно работать она уже не будет. Но по идее под линухом можно это обойти.


Если нужен хотплуг то нужно стандарт читать, а не пытаться познать его методом тыка плат в компьютер.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 08:45
Сообщение #51


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 30 2010, 10:39) *
Если нужен хотплуг то нужно стандарт читать, а не пытаться познать его методом тыка плат в компьютер.

В стандарте написано что прочитайте регистр, и в этом регистр бит говорит поддерживает сплот хотплаг или не поддерживается. Вопрос, как сказать системе, то какой-то конкретный сплот поддерживает хотплаг?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Mar 30 2010, 09:30
Сообщение #52


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Если хочется грузить прошивку с пользовательского приложения, то на плате дожно быть устройство для хранения загружаемой прошивки - флэш память (медленно программруется, ограничен ресурс) или микроконтроллер, который будет хранить прошивку в ОЗУ. Тогда можно было бы зашить в ПЛИС бутлоадер - чистый интерфейс с PCIe и интерфейсом к этому микроконтроллеру. Перед загрузкой рабочей прошивки нужно считать configuration space PCIe платы, который устанавливается ОС или БИОС при старте, перегрузить прошивку, а потом восстановить configuration space своим драйвером.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 09:36
Сообщение #53


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(dmitry-tomsk @ Mar 30 2010, 11:30) *
Если хочется грузить прошивку с пользовательского приложения, то на плате дожно быть устройство для хранения загружаемой прошивки - флэш память (медленно программруется, ограничен ресурс) или микроконтроллер, который будет хранить прошивку в ОЗУ. Тогда можно было бы зашить в ПЛИС бутлоадер - чистый интерфейс с PCIe и интерфейсом к этому микроконтроллеру. Перед загрузкой рабочей прошивки нужно считать configuration space PCIe платы, который устанавливается ОС или БИОС при старте, перегрузить прошивку, а потом восстановить configuration space своим драйвером.

Загрузиться из флеши, дождаться конфигурации, записать конфигурацию к примеру во флеш, записать новую прошивку из драйвера во флеш, перезагрузиться с новой прошивкой из флеши, восстановить конфигурацион спейс из флеши. Где-то так? Слишком сложно.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 09:37
Сообщение #54


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(dmitry-tomsk @ Mar 30 2010, 12:30) *
Если хочется грузить прошивку с пользовательского приложения, то на плате дожно быть устройство для хранения загружаемой прошивки - флэш память (медленно программруется, ограничен ресурс) или микроконтроллер, который будет хранить прошивку в ОЗУ. Тогда можно было бы зашить в ПЛИС бутлоадер - чистый интерфейс с PCIe и интерфейсом к этому микроконтроллеру. Перед загрузкой рабочей прошивки нужно считать configuration space PCIe платы, который устанавливается ОС или БИОС при старте, перегрузить прошивку, а потом восстановить configuration space своим драйвером.

Этот метод понятен. Но все же интересно: а хотплуг для PCIe все же существует или нет?
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 09:53
Сообщение #55


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 30 2010, 11:37) *
Этот метод понятен. Но все же интересно: а хотплуг для PCIe все же существует или нет?

Его не может не быть, потому что expressCard это PCIe 1x. ИМХО.

И ИМХО, по идее можно любому разъему сказать что он HotPlug. Тоже ИМХО.
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Mar 30 2010, 09:56
Сообщение #56


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(Methane @ Mar 30 2010, 12:36) *
Загрузиться из флеши, дождаться конфигурации, записать конфигурацию к примеру во флеш, записать новую прошивку из драйвера во флеш, перезагрузиться с новой прошивкой из флеши, восстановить конфигурацион спейс из флеши. Где-то так? Слишком сложно.

Зачем это configuration space во флэш писать? Это неколько регистров, они в памяти приложения остаются, которое прошивку перегружает (или драйвера). Сложного ничего нет, основная проблема - где хранить новую прошивку (флэш не самый удобный вариант).
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 30 2010, 10:38
Сообщение #57


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 30 2010, 11:45) *
В стандарте написано что прочитайте регистр, и в этом регистр бит говорит поддерживает сплот хотплаг или не поддерживается. Вопрос, как сказать системе, то какой-то конкретный сплот поддерживает хотплаг?


Читать нужно: PCI Standard Hot-Plug Controller and Subsystem Specification 1.0
Только не знаю где взять.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 10:46
Сообщение #58


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(dmitry-tomsk @ Mar 30 2010, 11:56) *
Зачем это configuration space во флэш писать? Это неколько регистров, они в памяти приложения остаются, которое прошивку перегружает (или драйвера). Сложного ничего нет, основная проблема - где хранить новую прошивку (флэш не самый удобный вариант).

Флеш, это минимум 10тыс циклов. Так что можно и в ней. Прошивать, так по любому нужна будет CPLD, которая будет грузить. Проще уж ней выкрутится. Дело не в этом. Криво получается. И как я понял, от настроек root port зависит, что будет делать компютер, если на время перезагрузки endPoint перестанет отвечать.
Go to the top of the page
 
+Quote Post
SiTi
сообщение Mar 30 2010, 11:43
Сообщение #59


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 21-01-10
Пользователь №: 54 970



Цитата(Methane @ Mar 30 2010, 13:36) *
Загрузиться из флеши, дождаться конфигурации, записать конфигурацию к примеру во флеш, записать новую прошивку из драйвера во флеш, перезагрузиться с новой прошивкой из флеши, восстановить конфигурацион спейс из флеши. Где-то так? Слишком сложно.

Вот да... Я это и хотел сказать. Только вот не догадался, что конфигурационное пространство тоже надо сохранять...

Цитата
Зачем это configuration space во флэш писать? Это неколько регистров, они в памяти приложения остаются, которое прошивку перегружает (или драйвера).

Вот только не понятно, как это приложение будет иметь доступ к устройству (для записи), которое на какое-то время отрубилось... Это возможно?
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 11:49
Сообщение #60


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(SiTi @ Mar 30 2010, 13:43) *
Вот только не понятно, как это приложение будет иметь доступ к устройству (для записи), которое на какое-то время отрубилось... Это возможно?

Спецификация говорит что да. Все зависит от настроек root port. А какие настройки у него в PC, ХЕЗ.
Go to the top of the page
 
+Quote Post
SiTi
сообщение Mar 30 2010, 11:56
Сообщение #61


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 21-01-10
Пользователь №: 54 970



Цитата(disel @ Mar 30 2010, 14:38) *
Читать нужно: PCI Standard Hot-Plug Controller and Subsystem Specification 1.0
Только не знаю где взять.

Я у себя не нашёл.

Цитата
Спецификация говорит что да. Все зависит от настроек root port. А какие настройки у него в PC, ХЕЗ.
Какая спецификация PCIe? Есть у меня исходники линуксячего драйвера, где я что-то подобное видел - сохраняется всё конфигурационное пространство, потом ребуут карточки, потом почти всё это пространство восстанавливается. Только я тогда не понял, что за ребуут такой... А похоже это то, что нам надо smile.gif
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 12:01
Сообщение #62


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(SiTi @ Mar 30 2010, 13:56) *
Какая спецификация PCIe? Есть у меня исходники линуксячего драйвера, где я что-то подобное видел - сохраняется всё конфигурационное пространство, потом ребуут карточки, потом почти всё это пространство восстанавливается. Только я тогда не понял, что за ребуут такой... А похоже это то, что нам надо smile.gif

Какого именно драйвера? Ядро сейчас это 374 мегабайта.
В типовом ядре, есть каллбэки которые вызываются при инициализации PCI устройства, уходе его в слип, повердаун итд. Но чтобы сохранялось и восстанавливалось я не помню.
Go to the top of the page
 
+Quote Post
SiTi
сообщение Mar 30 2010, 12:18
Сообщение #63


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 21-01-10
Пользователь №: 54 970



drivers/net/mlx4/reset.c
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 12:46
Сообщение #64


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(SiTi @ Mar 30 2010, 14:18) *
drivers/net/mlx4/reset.c

ХЕЗ. По идее после ресета, base адресса могут и другие быть. То похоже ресестится не PCI а что-то на PCI карточке.
Go to the top of the page
 
+Quote Post
XVR
сообщение Mar 30 2010, 13:40
Сообщение #65


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(disel @ Mar 30 2010, 14:38) *
Читать нужно: PCI Standard Hot-Plug Controller and Subsystem Specification 1.0
Только не знаю где взять.
Тут - http://rapidshare.com/files/369941890/shpc1_0.pdf
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 16:16
Сообщение #66


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(XVR @ Mar 30 2010, 15:40) *

Так это же не PCIe. С линком-то что делать?
Go to the top of the page
 
+Quote Post
XVR
сообщение Mar 30 2010, 17:53
Сообщение #67


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(Methane @ Mar 30 2010, 20:16) *
Так это же не PCIe.
Это то, что рекомендовал disel, так что вопросы к нему smile.gif
Видимо нужен какой то из PCIe стандартов, только скажите какой (www.pcisig.com) Возможно PCIe Base подойдет
Немного написано в CEM спецификации:
Цитата
In the following text, all references to mechanical elements should be interpreted in the context of
the PCI Express card form factor definition, unless otherwise stated.
3.1. Scope
5 The PCI Express specification natively supports Hot-Plug/Hot Removal of PCI Express add-in
cards. However, hardware support of Hot-Plug/Hot-Removal on the system board is optional.
Since the PCI Express evolutionary form factor is designed as a direct PCI connector replacement
and utilizes an edge card connector, the PCI Express Native Hot-Plug model is based on the
standard usage model defined in the PCI Standard Hot-Plug Controller and Subsystem Specification,
10 Revision 1.0.
The following section describes the add-in card presence detect and PCI Express Native Hot-Plug
signals. For a detailed explanation of the register requirements and standard usage model, see
Chapter 7 of the PCI Express Base Specification, Revision 1.1.
3.2. Presence Detect
15 The PCI Express Hot-Plug controller detects the presence of an add-in card using the PRSNT2#
signal as shown in Figure 3-1. It is the responsibility of the Root Complex or the switch to
determine the presence of the add-in card and set the present bits in the appropriate register as
described in Chapter 7 of the PCI Express Base Specification, Revision 1.1. In addition to the Hot-Plug
controller, the PRSNT2# signal is used by the system board to recognize the presence of the add-in
20 card in order to enable the auxiliary signals: CLK, PERST#, SMBus, and JTAG. The two signals,
PRSNT1# and PRSNT2#, described in Figure 3-1, are required on the PCI Express connector and
must be supported by all PCI Express add-in cards.
Both PRSNT1# and PRSNT2# signals are required in order to detect the presence of the add-in
card and to ensure that it is fully inserted in the connector. Note that the pads on the add-in card
25 for the PRSNT1# and PRSNT2# signals are shorter than the rest of the pads in order to have about
1 ms difference of insertion time. Unused PRSNT2# pads on x4, x8, and x16 add-in cards can be
either standard length or the pad can be eliminated. This scheme is used to allow the power
switches to isolate the power to the card during surprise removal. The mechanical details are
provided in Chapter 5.
It is required that all PCI Express add-in cards implement variable-length edge finger pads and tie
the PRSNT1# and PRSNT2# signals together on the add-in card. There is more than one
PRSNT2# pin defined in the x4, x8, and x16 PCI Express connectors; these are needed to support
up-plugging. All add-in cards shall connect the PRSNT1# signal to the farthest-apart PRSNT2#
5 signal with a single trace in between them as illustrated in Figure 3-1. For example, a x4 add-in card
would connect PRSNT1# with PRSNT2# on pin B31, and a x8 add-in card would connect
PRSNT1# with PRSNT2# on pin B48. Refer to Table 5-1 for connector pin numbering and
definition. If the system board designer chooses to implement hot-plug support, the system board
must connect PRSNT1# to GND and separately connect all the PRSNT2# pins together to a single
10 pull-up resistor, as shown in Figure 3-1. The system board designer determines the pull-up resistor
voltage and associated use of applicable hot-plug control logic. If the system board designer
chooses not to implement hot-plug support, PRSNT1# and PRSNT2# connector pins may either
be left un-connected or may be grounded on the system board.
Since the x8 add-in card may plug into a x8 connector with a x4 Link only, the system board shall
15 have the two PRSNT2# pins (B31 and B48) connected together. This is required in order to sense
the presence of the x8 add-in card in a x8 connector that supports a x4 Link only. See Section 6.3
for card interoperability discussions.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 30 2010, 18:07
Сообщение #68


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(XVR @ Mar 30 2010, 20:53) *
Это то, что рекомендовал disel, так что вопросы к нему smile.gif
Видимо нужен какой то из PCIe стандартов, только скажите какой (www.pcisig.com) Возможно PCIe Base подойдет
Немного написано в CEM спецификации:

Ну возьму я завтра тестер, и прозвоню PRSNT сигналы. Что дальше?
Go to the top of the page
 
+Quote Post
XVR
сообщение Mar 30 2010, 19:33
Сообщение #69


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(Methane @ Mar 30 2010, 22:07) *
Ну возьму я завтра тестер, и прозвоню PRSNT сигналы. Что дальше?
Их не надо прозванивать, их надо имплементировать на своей плате (хоть с помощью реле). Если ядро ОС вообще в курсе, что hot-plug бывает, то их размыкание/замыкание заставит ядро (драйвер) заново инициализировать этот слот.
Немного криво, зато железно (в смысле в РЕАЛЬНОМ железе) rolleyes.gif
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 31 2010, 03:19
Сообщение #70


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(XVR @ Mar 30 2010, 22:33) *
Их не надо прозванивать, их надо имплементировать на своей плате (хоть с помощью реле). Если ядро ОС вообще в курсе, что hot-plug бывает, то их размыкание/замыкание заставит ядро (драйвер) заново инициализировать этот слот.
Немного криво, зато железно (в смысле в РЕАЛЬНОМ железе) rolleyes.gif

Это надо только пробовать.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 31 2010, 04:58
Сообщение #71


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 30 2010, 19:16) *
Так это же не PCIe. С линком-то что делать?


У Петрова в "Шины PCI, PCI Express" написано что пользовательская модель PCI Express Hot Plug выведена из пользовательской модели "PCI Standard Hot-Plug Controller and Subsystem Specification 1.0". И они идентичны с точки зрения пользователя. Изменения коснулись некоторых регистров, которые описаны в стандарте PCIe.
Go to the top of the page
 
+Quote Post
Methane
сообщение Mar 31 2010, 05:39
Сообщение #72


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(disel @ Mar 31 2010, 07:58) *
У Петрова в "Шины PCI, PCI Express"

А что за книга? "сферический PCIe в вакууме" или применительно к PC?

Цитата
написано что пользовательская модель PCI Express Hot Plug выведена из пользовательской модели "PCI Standard Hot-Plug Controller and Subsystem Specification 1.0". И они идентичны с точки зрения пользователя. Изменения коснулись некоторых регистров, которые описаны в стандарте PCIe.

В том-то и фишка, что я читал только про бит, прочитав который можно узнать поддерживает сплот хот-плаг или нет.
Go to the top of the page
 
+Quote Post
disel
сообщение Mar 31 2010, 05:54
Сообщение #73


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(Methane @ Mar 31 2010, 08:39) *
А что за книга? "сферический PCIe в вакууме" или применительно к PC?

Скорее "сферический PCI в вакууме". Про PCIe немного.
Go to the top of the page
 
+Quote Post
SiTi
сообщение May 12 2010, 10:53
Сообщение #74


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 21-01-10
Пользователь №: 54 970



Если в диспетчере устройств отключить устройство, потом его сбросить/перепрошить, потом опять попытаться обнаружить, то устройство обнаруживается и работает.
Go to the top of the page
 
+Quote Post
Methane
сообщение May 12 2010, 11:10
Сообщение #75


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(SiTi @ May 12 2010, 13:53) *
Если в диспетчере устройств отключить устройство, потом его сбросить/перепрошить, потом опять попытаться обнаружить, то устройство обнаруживается и работает.

А если загрузить систему, а потом прошить? Я сейчас пользуюсь рекомендациями альтеры - через jtag прошиваю, потом контрл-альт-дел. Тогда работает.
Go to the top of the page
 
+Quote Post
SiTi
сообщение May 12 2010, 15:49
Сообщение #76


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 21-01-10
Пользователь №: 54 970



Что-то я не понял... (Возможно вечер сказывается). Какую систему загрузить? И что даст ctrl+alt+del?
Можно пояснить по-подробнее?
Go to the top of the page
 
+Quote Post
Methane
сообщение May 12 2010, 16:35
Сообщение #77


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(SiTi @ May 12 2010, 18:49) *
Что-то я не понял... (Возможно вечер сказывается). Какую систему загрузить? И что даст ctrl+alt+del?
Можно пояснить по-подробнее?

Если я сейчас делаю так. Гружу плисину через JATG, потом делаю ресет через ctrl+alt+del (рекомендация альтеры). Если не делать ctrl+alt+del а загрузить ПЛИСину к примеру во время тестирования памяти, она не видится в системе.
Go to the top of the page
 
+Quote Post
dsmv
сообщение May 13 2010, 04:01
Сообщение #78


Местный
***

Группа: Свой
Сообщений: 451
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 284



Цитата(Methane @ May 12 2010, 20:35) *
Если я сейчас делаю так. Гружу плисину через JATG, потом делаю ресет через ctrl+alt+del (рекомендация альтеры). Если не делать ctrl+alt+del а загрузить ПЛИСину к примеру во время тестирования памяти, она не видится в системе.



Есть ещё вариант. Программа adp201x1_restart позволяет запомнить базовые адреса BAR0, BAR1. А потом их восстановить.
Один раз необходимо запустить программу в режиме определения базовых адресов:
adp201x1_restart 4953 5504 -r
Будет сформирован файл bar.txt в котором будут сохранены значения базовых адресов.
После перезагрузки ПЛИС через JTAG надо выполнить команду:
adp201x1_restart 4953 5504 -w
Программа запишет BAR0, BAR1, COMMAND

Перезагрузка компьютера не требуется.

4953 - это VendorID
5504 - это DeviceID

На компьютере c Chipset P45 работоспособность восстанавливается в полном объёме.
На компьютере с процессором I7 и Chipset P55 восстанавливается только обращения к регистрам. Канал DMA не работает.

Программа работает через драйвер UNINSYS.

Файлы:
Прикрепленный файл  adp201x1_restart_bin.zip ( 5.07 килобайт ) Кол-во скачиваний: 68
- собственно программа

Прикрепленный файл  adp201x1_restart_src.zip ( 10.84 килобайт ) Кол-во скачиваний: 64
- исходные тексты

Прикрепленный файл  uninsys_2.3.exe.ZIP ( 433.1 килобайт ) Кол-во скачиваний: 144
- драйвер UNINSYS - необходимо переименовать расширение в *.exe
Go to the top of the page
 
+Quote Post
Methane
сообщение May 13 2010, 04:43
Сообщение #79


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(dsmv @ May 13 2010, 07:01) *
Есть ещё вариант.

А если не винда и вообще свой драйвер?
Go to the top of the page
 
+Quote Post
dsmv
сообщение May 13 2010, 06:39
Сообщение #80


Местный
***

Группа: Свой
Сообщений: 451
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 284



Цитата(Methane @ May 13 2010, 08:43) *
А если не винда и вообще свой драйвер?


Тогда нужно научится запоминать и восстанавливать регистры BARx и COMMAND
Go to the top of the page
 
+Quote Post
Bad0512
сообщение May 13 2010, 08:28
Сообщение #81


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(Methane @ Mar 30 2010, 13:25) *
Дело не только в хотплаге. Дело в том что хотелось бы
1. Грузить прошивку прямо из драйвера.
2. Не перезагружать комп при каждой смене прошивки.

Да, а поставить плату в компютер, (пустую, без прошивки) а потом запрограммировать ее через JTAG, получается? Я читал что у народа работает, но тоже только один раз. Если сменить прошивку, не работает.

1. Из драйвера грузить не получится. Ибо когда девайс у вас не загружен - BARов и прочей хрени просто _физически_ не существует.
2. Могу предложить старый "дедовский" способ отладки :
2.1. Disable device в Device manager
2.2. Reload FPGA using JTAG cable.
2.3. Enable device or Scan for Hardware changes in Device manager.
По времени занимает минуты 3-4 в зависимости от сноровки спортсмена wink.gif
Ну или вышеописанный способ (пишите утилиту, которая сохраняет изменяемые регистры (особенно BARы) куда-нибудь, потом перегружаете FPGA и потом той же мостыркой восстанавливаете прежние значения. Тут расчёт на то, что система "ничего не заметит". Этот трюк, как уже описано выше, не всегда и не везде прокатывает.


Цитата(Methane @ May 13 2010, 11:43) *
А если не винда и вообще свой драйвер?

На "невинде" последовательность действий должна быть примерна та же:
1. Убиваем девайс в системе, не знаю как это делается, возможно достаточно всего лишь драйвер выгрузить.
2. Делаем свои дела с девайсом, т.е. перегружаем FPGA.
3. Пинаем bus enumerator на поиск девайсов по новой. Возможно для этого его надо перегрузить, либо запустить какой-то скрипт.

Все эти действия (исходя из идеологии этой самой пресловутой "невинды") можно запихать в один скриптик, уменьшая количество ручной работы до минимума.
Go to the top of the page
 
+Quote Post
Methane
сообщение May 13 2010, 08:42
Сообщение #82


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(Бэд @ May 13 2010, 11:28) *
На "невинде" последовательность действий должна быть примерна та же:
1. Убиваем девайс в системе, не знаю как это делается, возможно достаточно всего лишь драйвер выгрузить.
2. Делаем свои дела с девайсом, т.е. перегружаем FPGA.
3. Пинаем bus enumerator на поиск девайсов по новой. Возможно для этого его надо перегрузить, либо запустить какой-то скрипт.

Все эти действия (исходя из идеологии этой самой пресловутой "невинды") можно запихать в один скриптик, уменьшая количество ручной работы до минимума.

Тут главная проблема в том, что PC, по подаче питания, если не находит ничего в сплоте, то имеет полное право считать что там ничего нет. Только что проверил, если карточку не нашел BIOS (она потом появилась) то линух ее тоже уже не видит. А это значит трах с параллельным пассивным программированием.
Go to the top of the page
 
+Quote Post
gosu-art
сообщение Sep 3 2011, 17:28
Сообщение #83


Знающий
****

Группа: Свой
Сообщений: 555
Регистрация: 14-10-09
Пользователь №: 52 939



Здравствуйте!
Methane
Можно узнать, чем у вас закончились эксперименты с ХотПлугом?

Сейчас стоит наподобие задача - нужна обязательно горячая реконфигурация(возможно с использованием Remote System Upgrade). И вот думаю, связываться с Альтеровской PCIe или поставить PEX(не PHY) какой нить. Есть некоторые вопросы:
1. Если я поставлю PEX, то я понимаю проблемы с горячей реконфигурацией исчезнут? и с ПЛИСиной можно будет творить что угодно rolleyes.gif когда компьютер загрузится (WinXP).
2. Интересует PCIe'ый JTAG! Можно ли его использовать в своих корыстных целях))? Ну, например, нацелить на него Programmer, SignalTap? (естественно JTAG ноги будут на плисину заведены и, соответственно, будет стоять PEX)
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Sep 4 2011, 12:50
Сообщение #84


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(gosu-art @ Sep 4 2011, 00:28) *
Здравствуйте!
Methane
Можно узнать, чем у вас закончились эксперименты с ХотПлугом?

Сейчас стоит наподобие задача - нужна обязательно горячая реконфигурация(возможно с использованием Remote System Upgrade). И вот думаю, связываться с Альтеровской PCIe или поставить PEX(не PHY) какой нить. Есть некоторые вопросы:
1. Если я поставлю PEX, то я понимаю проблемы с горячей реконфигурацией исчезнут? и с ПЛИСиной можно будет творить что угодно rolleyes.gif когда компьютер загрузится (WinXP).
2. Интересует PCIe'ый JTAG! Можно ли его использовать в своих корыстных целях))? Ну, например, нацелить на него Programmer, SignalTap? (естественно JTAG ноги будут на плисину заведены и, соответственно, будет стоять PEX)

Можно и не PEX. Поглядите на GN4121 / GN4124 от Gennum.
Для вариантов X1 и X4 очень неплохое решение.
Go to the top of the page
 
+Quote Post
dsmv
сообщение Sep 5 2011, 03:36
Сообщение #85


Местный
***

Группа: Свой
Сообщений: 451
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 284



Цитата(gosu-art @ Sep 3 2011, 20:28) *
1. Если я поставлю PEX, то я понимаю проблемы с горячей реконфигурацией исчезнут? и с ПЛИСиной можно будет творить что угодно rolleyes.gif когда компьютер загрузится (WinXP).
2. Интересует PCIe'ый JTAG! Можно ли его использовать в своих корыстных целях))? Ну, например, нацелить на него Programmer, SignalTap? (естественно JTAG ноги будут на плисину заведены и, соответственно, будет стоять PEX)


При наличии PEX8311 проблемы с перезагрузкой ПЛИС исчезают.
А вот PCI'ый JTAG использовать вряд ли удасться. Я не встречал информации о его поддержке на системных платах. Как вариант можно сделать аналог Byte Blaster, но вот удасться ли его запустить на порте с нестандартным адресом ?
Go to the top of the page
 
+Quote Post
gosu-art
сообщение Sep 5 2011, 04:30
Сообщение #86


Знающий
****

Группа: Свой
Сообщений: 555
Регистрация: 14-10-09
Пользователь №: 52 939



Спасибо!
Я так и думал, что с JTAG'ом облом получится.
Как вариант можно поставить в качестве моста еще одну ПЛИС-Altera CycloneIVgx. Вот думаю... стоит ли заморачиваться!?
Go to the top of the page
 
+Quote Post
gosu-art
сообщение Jun 6 2012, 18:19
Сообщение #87


Знающий
****

Группа: Свой
Сообщений: 555
Регистрация: 14-10-09
Пользователь №: 52 939



Вот такой вопросик возник...
Потянут ли трансиверы С4 external pcie без использования редрайверов ? длина кабеля 1м.
Go to the top of the page
 
+Quote Post
MishaN
сообщение Jun 8 2012, 06:16
Сообщение #88


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 2-06-12
Из: Минск
Пользователь №: 72 138



Не совсем по теме, но может есть у кого опыт...
Подскажи, а Express Card у Ноутбуков это ведь и есть PCIe? Где можно взять адаптер чтобы вывести наружу стандартный PCIe и воткнуть туда свою плату с FPGA
(ну нету уменя настолького компа и покупать нехочу)
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Jun 8 2012, 06:47
Сообщение #89


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 MishaN
Не только. Вот в этом документе всё расписано. Особенно обратите внимание на Table 3-1: ExpressCard Interface - List of Signals wink.gif
Главное вам там с драйвером разобраться
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Jul 14 2018, 09:26
Сообщение #90


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Порекомендуйте, пожалуйста, switch для превращения artix-7 pciex4 в pciex1 3.0. Нужно 8 плат в компьютер воткнуть с макс. пропускной способностью.
Go to the top of the page
 
+Quote Post
bambr
сообщение Jul 16 2018, 15:33
Сообщение #91


Участник
*

Группа: Свой
Сообщений: 57
Регистрация: 3-08-06
Из: Раменское
Пользователь №: 19 297



Цитата(dmitry-tomsk @ Jul 14 2018, 12:26) *
Порекомендуйте, пожалуйста, switch для превращения artix-7 pciex4 в pciex1 3.0. Нужно 8 плат в компьютер воткнуть с макс. пропускной способностью.


Невнятный вопрос. Превращаем Artix-7 в свитч? Тогда не проще ли микросхемы свитчей использовать?



--------------------
turizm62.ru
Go to the top of the page
 
+Quote Post
krux
сообщение Jul 16 2018, 17:37
Сообщение #92


Профессионал
*****

Группа: Свой
Сообщений: 1 700
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



мне PCIe свичи от IDT очень понравились.


--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Jul 17 2018, 08:14
Сообщение #93


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(krux @ Jul 16 2018, 21:37) *
мне PCIe свичи от IDT очень понравились.

Спасибо, не нашёл только у них pcie 3.0
Go to the top of the page
 
+Quote Post

7 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 14:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.02728 секунд с 7
ELECTRONIX ©2004-2016