Forum Discussion
Altera_Forum
Honored Contributor
21 years agoOpencores PCI bridge core
Has someone used the Opencores PCI bridge core? What was your experience? I need to build a Cardbus (32bit PCMCIA) - FPGA card using a CyclonII device. I want to use this core to read/write ...
Altera_Forum
Honored Contributor
21 years agoStonie,
<div class='quotetop'>QUOTE </div> --- Quote Start --- If not - any suggestions for a different core (wchich costs less than $2000 on royalties).[/b] --- Quote End --- in my project I use the core from PLD-Applications (www.plda.com) . It's a Master / Target PCI / PCI-X core for 32 or 64 Bit bus-size. I've implemented a PCI-target function, that has access to a shared SRAM on Avalon-Bus, which is the System-RAM. So, I have a small boot loader in EPCS, but the main firmware is loaded via PCI-bus direct into the SRAM (PCI-Space 0). Further I've implemented a master function to transfer data from Avalon via PCI-DMA to the host PCI-Memory. And third, a bidirectional register file (PCI-Target) to communicate (PCI-Space 1). I spent lots of time to implement the target interface PCI <-> Avalon: when PCI requests access to an Avalon device, a wait signal from Avalon is active while the arbitration process is working. If wait ends, the following single cycle is the access cycle to Avalon. But the PCI core needs after the delay phase several PCI-clock cycles until its own access will be processed. In other words, the PCI core expects, that he has got the system bus an indefinite time until its access is done. So this interface to Avalon is not adapted very well. With my interface only 32-Bit transfers are possible, because byteenables from PCI core are valid, several cycles after Avalon access is done. Mike