UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor z0x0c0v0b0b
Visitor
2,451 Views
Registered: ‎08-08-2017

How to use zynq7 connect to microblaze

hi 

I want to connect zynq7 with microblazes(10) and use spi(10) 

 

you can see photo diagram.

 

thank you very much for your help

 

1.jpg
0 Kudos
5 Replies
Visitor z0x0c0v0b0b
Visitor
2,447 Views
Registered: ‎08-08-2017

Re: How to use zynq7 connect to microblaze

sorry I forget

 

I use vivado2017 program  and board microzed7020

0 Kudos
Voyager
Voyager
2,425 Views
Registered: ‎06-24-2013

Re: How to use zynq7 connect to microblaze

Hey @z0x0c0v0b0b,

 

Any specific reason that you want to use 10 soft processors with one SPI bus each?

(just curious here :)

 

Thanks,

Herbert

-------------- Yes, I do this for fun!
0 Kudos
Moderator
Moderator
2,423 Views
Registered: ‎11-09-2015

Re: How to use zynq7 connect to microblaze

Hi @z0x0c0v0b0b,

 

What you need is maybe the AXI quad SPI IP. You can connect several instances to the zynq using an AXI interconnect or AXI Smarconnect.

 

Regards,

 

Florent


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
Scholar hbucher
Scholar
2,415 Views
Registered: ‎03-22-2016

Re: How to use zynq7 connect to microblaze

@z0x0c0v0b0b Complementing @florentw you can use the SPI IP. The only problem with so many microblazes is that you are going to run out of BRAM very quickly. When I do these things I just disable caches and LMB and be careful in the link script to assign memory regions (.data, .text etc) that are not overlapping - this is some manual, tedious but necessary housekeeping. 

vitorian.com --- We do this for fun. Always give kudos. Accept as solution if your question was answered.
I will not answer to personal messages - use the forums instead.
spidesign.PNG
Moderator
Moderator
2,366 Views
Registered: ‎09-12-2007

Re: How to use zynq7 connect to microblaze

Why 10? Anyway, you would need to use the DDR to store your application as you will not have enough bram on your target device to satisfy your needs here.  

 

Problem is, when the Microblaze comes out of reset, it fetches the instructions from the value that is set in the boot vector in the Microblaze config. So, if you have nothing here then you will hang your processor.

 

So, you need to set the boot_vector accordingly for each Microblaze. You also need to enable discrete ports in each microblaze. This will allow you to set the reset_mode. Set this to 01 (use a constant IP from the IP catalog to do this). Then connect the wakeup port to the calib_done pin on the mig IP. So, basically, what you are doing is holding the microblazes  in reset untill the memory is available (which is after calibration). I created a similar wiki article for this, see here:

http://www.wiki.xilinx.com/Execute+Microblaze+Application+from+PS+DDR

 

You will then need to update the linker for each of your applications manjually in the ld file. Just update the memory to the relevant offset.