LatDrIvE
Member level 4
ocm bram assembly code
Hello all
I am having a problem with the OCM BRAM. I am using virtex II pro and EDK tools.
I have an OCM BRAM and the PORT B is unconnected. I would like to give throught a testbench on PORT B data and address vectors. SO i have done the Port
B of BRAM as "external signals". The question is that is makes two OCM controllers, the one for Data (Docm_cntlr) and the other for instruction (iocm_cntlr).
Part of the testbench:
WAIT FOR 30 ns; -- Time=930 ns
dsocm_bram_BRAM_Addr_B_pin <= transport std_logic_VECTOR'("00000000000000000000000000001111"); --F
dsocm_bram_BRAM_Dout_B_pin <= transport std_logic_VECTOR'("00000000000000001111111111111111"); --FFFF
-1- Do i need to set as "external ports" the port B in the Data and Instruction controllers?
-2- If yes then how i can load the address and the data trought the ports?connect them with a common internal signal probably?
-3- Do i need to connect in an internal signal the i.e.dsocm_bram_BRAM_Addr_B and isocm_bram_BRAM_Addr_B so they can have the same address vector?
The other problem concerning the Assembly for that:
Also the address map is:
Address Map for Processor ppc405_0
(0b0000010000-0b0000010011) ppc405_0
(0b0000100000-0b0000100011) ppc405_0
(0x40000000-0x4000ffff) LEDs_16Bit plb->plb2opb->opb
(0x41c00000-0x41c0ffff) opb_timer_1 plb->plb2opb->opb
(0xa0e08000-0xa0e0ffff) docm_cntlr docm
(0xffff8000-0xffffffff) iocm_cntlr iocm
Checking ELFs associated with PPC405 instance ppc405_0 for overlap...
I would like the PPC405 to read data (word type 32 bits) from the BRAM but i cannot understand using assembly code how to do it. i have tried to load/read but
with no expectable result. Can u write the 3-4 lines using them as a pattern form for the others?
thank you very much.
Hello all
I am having a problem with the OCM BRAM. I am using virtex II pro and EDK tools.
I have an OCM BRAM and the PORT B is unconnected. I would like to give throught a testbench on PORT B data and address vectors. SO i have done the Port
B of BRAM as "external signals". The question is that is makes two OCM controllers, the one for Data (Docm_cntlr) and the other for instruction (iocm_cntlr).
Part of the testbench:
WAIT FOR 30 ns; -- Time=930 ns
dsocm_bram_BRAM_Addr_B_pin <= transport std_logic_VECTOR'("00000000000000000000000000001111"); --F
dsocm_bram_BRAM_Dout_B_pin <= transport std_logic_VECTOR'("00000000000000001111111111111111"); --FFFF
-1- Do i need to set as "external ports" the port B in the Data and Instruction controllers?
-2- If yes then how i can load the address and the data trought the ports?connect them with a common internal signal probably?
-3- Do i need to connect in an internal signal the i.e.dsocm_bram_BRAM_Addr_B and isocm_bram_BRAM_Addr_B so they can have the same address vector?
The other problem concerning the Assembly for that:
Also the address map is:
Address Map for Processor ppc405_0
(0b0000010000-0b0000010011) ppc405_0
(0b0000100000-0b0000100011) ppc405_0
(0x40000000-0x4000ffff) LEDs_16Bit plb->plb2opb->opb
(0x41c00000-0x41c0ffff) opb_timer_1 plb->plb2opb->opb
(0xa0e08000-0xa0e0ffff) docm_cntlr docm
(0xffff8000-0xffffffff) iocm_cntlr iocm
Checking ELFs associated with PPC405 instance ppc405_0 for overlap...
I would like the PPC405 to read data (word type 32 bits) from the BRAM but i cannot understand using assembly code how to do it. i have tried to load/read but
with no expectable result. Can u write the 3-4 lines using them as a pattern form for the others?
thank you very much.