EDK-Creating new peripheral

I am trying to connect a custom IP to my MicroBlaze design. This custom IP is connected to the OPB Bus. It reads data from MicroBlaze, performs some computations and gives data back to the processor. I cannot figure out how to write data into the custom IP or how to read data from that IP.

When we use Xilinx IP Cores, like GPIO, we are provided with functions like XGpio_Read, XGpio_Write etc. How do we communicate with our custom peripherals if we do not have such functions related to the custom peripheral? Do you have to write these drivers or is it sufficient just to make a wrapper for the custom peripheral so that all bus signals match the signals of the top-level wrapper?

I would really appreciate if someone could guide me to an appropriate document or list out the steps of how to do this.

Thanks

Reply to
kittyawake
Loading thread data ...

The "Create and Import Peripheral Wizard" (chapter 4:

formatting link
is a good starting point. Use the skeleton files created as a starting point for your own custom core. An example device driver to access the custom core from the procossor is generated as well.

Paul

snipped-for-privacy@gmail.com wrote:

Reply to
Paul Hartke

Try this tutorial, it give you a Basic understan

formatting link

Reply to
digi

Hi, The only way I guess that you can write to your own IP is through registers..When u invoke the Create/Import Peripheral Wizard ..It gives you an option of creating few User Registers ..U can write to these registers ..and after u do some computation ..u can also read back from these registers ...And regarding the drivers that u were talking about ..they are automatically genereated in case u r using EDK 6.3 ( I dunno about other versions ..) .. In case if ur r using EDK ..When u say Generate Libraries after ur core included in the EDK ..then there will be a folder called "drivers" in ur project directory ... in that u will have simple functions to read and write to registers ...or else u can write your own code to read and write registers that's not a big deal at all.. So I guess I can u give u all the steps to add your own core in EDK ..but I am assuming that u have already done that ..So let me know in case u have any questions ..

-- Parag Beeraka

Reply to
beeraka

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.