Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
18 years ago

Insert an external design in Startix II

Hi,

I'am a new user of Quartus. I' am working on a Nios II Development Kit.

The aim of my project is to insert in the FPGA a component resulting of an external design, and to communicate with it using an address/data bus to read or write its internal registers.

In SOPC Builder, I have create a new component from my vhd file, then I have added a new such component. I have assigned to Avalon the signals corresponding to Avalon signals, and I have assigned signals I want to export as "global_signals" "export".

After generation wthout error, I return to Quartus, I make an "Update all symbols and blocks" and I constat that only signals corresponding to Avalon signals appear on the block. In the Assigment Editor I'am happy to constat that the signals that I want to connect to export have the right location.

My first question is : is it necessary to add the vhd file, corresponding to my external design, in "Device Design Files" in Quartus, then "Create Symbol Files for Current File", and finally insert the corresponding symbol in the shematic ?

I have made the two tests :

- without insertion of the symbol : I can't command an output port through my component !!!

- with insertion of the symbol, I can't compile, errors appear...

What is the good way ?

Thank you for your help.

Bernard.

2 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Once you've created your custom peripheral, the HDL from which it has been created needs to be part of your overall Quartus project. However, you don't need to create a special symbol for it and you shouldn't add that symbol to your top level schematic (I assume).

    The reason that "without insertion of the symbol" doesn't work, is probably a logic error with the custom logic component, or some mistake made when "hooking it up" (incorrectly mapping the Avalon signals to your peripheral's signals or something like that).

    I'd suggest that you start with an extremely simple peripheral and use simulation to try to identify the problem. Once you get something working, you can add complexity while limiting the number of things that you're changing. Baby steps.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Bland Guy, thank you for response. I'll follow your suggestion and try to make baby steps with a very simple peripheral. I'll give you the result...

    Bernard.