Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
17268 Discussions

How to add ISP1362 component to SOPC in DE2?

Altera_Forum
Honored Contributor II
4,421 Views

Who use the DE2 kit? 

I study the example in its referrenc of DE2_SD_Card_Audio and I don't know it is how to add the ISP1362 in SOPC. 

I try add it as new component but the result is not same. 

I wish someone give me some suggests. 

Thank you.
0 Kudos
17 Replies
Altera_Forum
Honored Contributor II
2,148 Views

ISP1362:avalon_slave_1_irq:"associated addressable interface"(assocaitedAddressablePoint) out of range.. 

 

this is th error i got when i tried to upgrade the .ptf file of DE2_SD_Card_Audio to .sopc file, 

 

 

anybody knows the solution to this please?
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

@San : I have got the same problem (with isp1362 in quartus v9.0), and have been stuck for a long time. If you or anyone have a solution, please share! 

thank alot!
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

If you add the ISP1362 as a "New Component.." in SOPC builder, it will bring up the Component Editor window. 

 

Switch to the Signals tab, and for OTG_ADDR, click the Interface entry and select "New Conduit". This should create a new conduit called "conduit_end". Use this as the interface for all of the OTG_ signals. Change the Signal Type for all of the OTG_ signals to "export". 

 

Create new interrupt sender interfaces for irq_n and irq_n_avalon_slave_1. set them both to signal type irq_n. 

 

On the Interfaces tab, set the interface address source (?) under interrupt_sender to be avalon_slave_0. Use avalon_slave_1 for interrupt_sender_1.  

 

Set the slave addressing (under deprecated for avalon_slave_0 and 1) to NATIVE. Set the timing to use ns, and the setup, r/w wait, and hold delays to be 100ns each. 

 

This should get you past the SOPC errors...
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

A relatively simple method :there is ISP1362_IF_hw.tcl in folder \ip\TERASIC_ISP1632 with DE2_70_NIOS_HOST_MOUSE_VGA project from de2-70 broad demonstrations! 

You can copy out ISP1362_IF_hw.tcl into your builded project directory ! 

then,open SOPC builder ! So SOPC builder's System Contents display ISP1362 component !
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

did anyone find a solution for this? i am facing the same problem and i tried different things but could not get it fixed.. can someone help?

0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

what did you try? i got it to work with me on quartus 9/10 on windows using the method in my post above.

0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

Hello ! 

Sorry to unburry this thread, but it needs a little clarification and/or update. 2 methods were given to integrate the isp1362 component from the demonstration project called "DE2_HOST_MOUSE(...)" (v7.1) in your SOPC builder (v>10). 

 

The first is to put the ISP1362 directory in your project directory so that SOPC builder loads it and upgrade it by itself. In my Quartus v11 this leads to really unclear errors. 

 

So a kind member gave us the method to upgrade it by ourselves. This is very nice but also very disturbing because a little bit more details would be enough to get beyond this ! 

 

Here  

 

 

--- Quote Start ---  

 

"Switch to the Signals tab, and for OTG_ADDR, click the Interface entry and select "New Conduit". This should create a new conduit called "conduit_end". Use this as the interface for all of the OTG_ signals. Change the Signal Type for all of the OTG_ signals to "export"." 

--- Quote End ---  

OK that was easy : (cf : well.. first post can't post image...) 

 

 

--- Quote Start ---  

Create new interrupt sender interfaces for irq_n and irq_n_avalon_slave_1. set them both to signal type irq_n. 

--- Quote End ---  

?? Where is irq_n ? 

 

 

--- Quote Start ---  

On the Interfaces tab, set the interface address source (?) under interrupt_sender to be avalon_slave_0. Use avalon_slave_1 for interrupt_sender_1.  

--- Quote End ---  

Mmmh... nope can't see either 

 

 

--- Quote Start ---  

Set the slave addressing (under deprecated for avalon_slave_0 and 1) to NATIVE. Set the timing to use ns, and the setup, r/w wait, and hold delays to be 100ns each. 

--- Quote End ---  

Ah ! This one's easy ! 

 

I'm pretty sure it isn't that hard even more if you have read a tuto on how to build a SOPC component but a lot of people would be glad to have a little help on this ;-) !
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

On the Signals tab, you should have two signals named "irq_n" and "irq_n_avalon_slave_1". 

 

For both of these, click on the interfaces field and select "new interrupt sender...". This should give you "interrupt_sender" and "interrupt_sender_1". For each of these updated lines, set the signal type to "irq_n". 

 

Only once you've created these new interrupt senders will they show up in the right place on the Interfaces tab. Now go down to the "interrupt_sender" and "interrupt_sender_1" sections and pick the right avalon_slave from the "Associated addressable interface" pulldown in the Parameters section. 

 

Still on the Interfaces tab, go to the "avalon_slave_0" and "avalon_slave_1" sections. Update the timing section to use nanoseconds, and set the setup, read wait, write wait, and hold delays to be 100ns for both. Go down a bit to the "Depreacated" section of each interface, click the triangle and set the slave addressing to use NATIVE instead of DYNAMIC. 

 

This works for me using Quartus 11.0 and SOPC builder.
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

Thanks for the answer ! I had given up trying to have the two interupts. Instead I configured the ISP1362 to send both on one bit ! 

 

Good luck to any person doing USB !
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

I'm using Terasic's provided DE2_NIOS_DEVICE_LED project to try and get ISP1362 working. I opened the Quartus project file, then opened SOPC Builder and was prompted to update the components. I clicked upgrade ISP1362 and followed wtfe's instructions. The first step was OK, but there are [bold]no irq_n and irq_avalon_slave_1 signals listed in the Signals tab[/bold]. The "Add Signal" button is also greyed out. 

 

However, if I skip the first step, I can add one signal (irq_n) and then do the OTG_ steps but I can't add another signal. 

 

I also don't have "avalon_slave_1" listed in the Interfaces tab (only "clk", "avalon_slave_0_export", "avalon_slave_0", "avalon_slave_0_irq", "avalon_slave_1_irq", "interrupt_sender", and "conduit_end")
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

hi sodaa!  

I am also facing the same problem that you faced while adding isp1362 to sopc(quartus 11.0). There are no irq_n and irq_n_avalon_1. Please tell me how you managed to solve this problem. Note that I am new to fpga.
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

I followed wtfe's solution the first time. I think it worked out but, I can't seem to duplicate the results. 

 

The first part was easy. I have the OTG_Ports done. 

 

The next part I could complete also. 

 

The main problem is, when going through the initial updating of the ISP1362 (to get your pins), it seems that the avalon_slave_1 gets deleted somehow. 

 

I can recreate a new avalon_slave_1 interface easy enough and everything is done, almost. The new interface needs some pins associated with it (but which ones?). I compared with the avalon_slave_0 and I could see the problem right away. Everything is tied to the avalon_slave_0 and I have nothing tied to avalon_slave_1.  

This causes a couple warnings about unconnected in/outputs and if I try to add this updated component to the SOPC, I get a failed compile if I try to create my NIOS system. 

The other problem is if I try to remove unconnected interfaces, then I lose the avalon_slave_1. 

 

Like I said the first time I tried the suggestions, I had the slave_1 interface, Everytime I tried after that, I lost it. I don't know what happened. I would like to be able to update the component and add it to the terasic file in the ip folder and have it ready if I need it again in a new system later. 

 

My question is this, What pin(s) do I have to connect to the avalon_slave_1? 

 

I'm looking at the datasheet to see if I can find a clue, but I can't. So I'm stuck and hope I've given enough info for help. 

 

Oh yes I'm using Quatus V9.0 and the DE2 board.
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

I think I found the answer. 

 

The problem is that there are two ISP1362's out there. 

 

wtfe's solution will work if you use the ISP1362_CTRL.v (available on alterawiki). 

 

wtfe's solution will not work with the ISP1362_IF.v provided by Terasic. 

 

Use ISP1362_CTRL.v from alterawiki, then follow wtfe's solution.
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

 

--- Quote Start ---  

I think I found the answer. 

 

The problem is that there are two ISP1362's out there. 

 

wtfe's solution will work if you use the ISP1362_CTRL.v (available on alterawiki). 

 

wtfe's solution will not work with the ISP1362_IF.v provided by Terasic. 

 

Use ISP1362_CTRL.v from alterawiki, then follow wtfe's solution. 

--- Quote End ---  

 

HI willbable,  

thanks... i has been try your suggestion to used ISP1362_CTRL.v as u recommend available on alterawiki....and finally i can generate that file onto SOPC....... 

 

However.... after it generated the result mentions as below????? Why.....????plz somebody help me ...it urgent....and i appreciated it.....  

 

 

ERROR: 

slave (ISP1362/avalon_slave_1) data width is 0 

Error: Generator program  

for module 'cpu_0' did NOT run successfully.
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

i do not see "irq_n" and "irq_n_avalon_slave_1" in signals. Could you please provide me with a screenshot? 

 

Thanks
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

Error: ISP1362.avalon_slave_1_irq: "Associated addressable interface" (associatedAddressablePoint) out of range 

 

Where i will get complete folder for ISP1362_CTRL.v ? 

 

i have replaced the file ISP1362_IF.v with ISP1362_CTRL.v but i am getting  

 

Error: ISP1362: Component isp1362 1.0 not found 

 

Error: ISP1362.avalon_slave_0: Must have address units of WORDS in SOPC Builder (was null)
0 Kudos
Altera_Forum
Honored Contributor II
2,148 Views

I have got the same problem (with isp1362 in quartus v9.0).  

error: isp1362.avalon_slave_1_irq: associatedaddressablepoint out of range 

(Project DE2_demonstrations\DE2_SD_Card_Audio). 

Please help me:)
0 Kudos
Reply