microblaze as submodule

F

Frank

Guest
Hi,

I'm using a design which contains a microblaze system as submodule. In the
microblaze design there are interrupt used. These interrupts are global
ports in the MHS file. What should I do with these ports in the toplevel
design? The interrupts are generated by OPB devices which exists inside the
microblaze system. So I don't need them in my toplevel design. Actually, the
question is: should the toplevel, which includes the microblaze as a
component, contain all ports specified in the MHS file?

TIA,
Frank
 
Hi,

You can specify in the .mhs file which signals you want to bring out to
the entity of the submodule.
Only bring out signals that you use and need in the top-level.

Göran

Frank wrote:

Hi,

I'm using a design which contains a microblaze system as submodule. In the
microblaze design there are interrupt used. These interrupts are global
ports in the MHS file. What should I do with these ports in the toplevel
design? The interrupts are generated by OPB devices which exists inside the
microblaze system. So I don't need them in my toplevel design. Actually, the
question is: should the toplevel, which includes the microblaze as a
component, contain all ports specified in the MHS file?

TIA,
Frank
 
Hi,

These interrupts are
global ports in the MHS file. What should I do with these ports in the
toplevel design? The interrupts are generated by OPB devices which
exists inside the microblaze system. So I don't need them in my
toplevel design.
You should be aware that the default scope setting for all ports
in XPS is 'external' although most ports are only needed 'internal'.
So when you are generating your mhs using XPS alway remember to
set them 'internal'.
i.e when you are using Projects -> Add/edit Cores to add your
components in the ports tap always remember to double click the
scope colums an set your signals internal. Sometimes it gets very
anoying when you forget to do so, as every other port usings
this signal is set back to external.
The more convinient way, of course, will be writing you
mhs by hand using an text editor. This is a bit of a struggle
in the beginning, but will your spare a lot of trouble with xps

Erik

********************************************
Erik Hansen
SHF Communication Technologies AG
edothansenatshfdotbiz
********************************************
 
I am making the MHS file by hand. Now in the MHS file I've the following:

BEGIN opb_intc
PARAMETER INSTANCE = opb_intc
PARAMETER HW_VER = 1.00.c
PARAMETER C_IRQ_IS_LEVEL = 1
PARAMETER C_IRQ_ACTIVE = 1
PARAMETER C_BASEADDR = 0xFFFF8400
PARAMETER C_HIGHADDR = 0xFFFF84FF
PORT Irq = mblaze_irq
PORT Intr = pci_irq & pec_irq
BUS_INTERFACE SOPB = opb_bus
END

so pci_irq and pec_irq are local ports, but in the MSS file I've the
following:

PARAMETER INT_HANDLER = pci_isr, INT_PORT = pci_irq
PARAMETER INT_HANDLER = pec_isr, INT_PORT = pec_irq

when I try to build a netlist, I get the error:

ERROR: Intr (opb_intc) - pec_irq not previously defined!

Check the following for possible causes:

- Nowhere else in the system is pec_irq defined
- pec_irq is not identified as an interrupt signal
- Check MPD of the instance that is the source of pec_irq for
SIGIS=INTERRUPT, EDGE=RISING/FALLING, or LEVEL=HIGH/LOW tags

Platform build failed
make: *** [implementation/bootldr.ngc] Error 1

How do I assign an interrupt handler to the local port?

Frank

"Erik Hansen" <nospam-comp-arch-fpga@erik-hansen.de> wrote in message
news:bpcqtg$1ncd1u$2@ID-207458.news.uni-berlin.de...
Hi,

These interrupts are
global ports in the MHS file. What should I do with these ports in the
toplevel design? The interrupts are generated by OPB devices which
exists inside the microblaze system. So I don't need them in my
toplevel design.

You should be aware that the default scope setting for all ports
in XPS is 'external' although most ports are only needed 'internal'.
So when you are generating your mhs using XPS alway remember to
set them 'internal'.
i.e when you are using Projects -> Add/edit Cores to add your
components in the ports tap always remember to double click the
scope colums an set your signals internal. Sometimes it gets very
anoying when you forget to do so, as every other port usings
this signal is set back to external.
The more convinient way, of course, will be writing you
mhs by hand using an text editor. This is a bit of a struggle
in the beginning, but will your spare a lot of trouble with xps

Erik

********************************************
Erik Hansen
SHF Communication Technologies AG
edothansenatshfdotbiz
********************************************
 

Welcome to EDABoard.com

Sponsor

Back
Top