![]() |
|
|
|
#1 |
|
Hello
Currently I am implementing my own IP which I wanna add to the FSL of the Microblaze soft processor. But unfortunately I have problems with the RAM I programmed. Although it is fully synthesizeable it doesnt work the way I want it to on the FPGA. In the simulation it looks good to me, so probably there is some syntax I use which causes problems on the FPGA. Here is the VHDL Code: library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; ------------------------------------------------------------------- -- START: Memory ------------------------------------------------------------------- entity memory is generic (width : integer); port (clk : in std_ulogic; rst : in std_ulogic; data_in : in std_ulogic_vector(31 downto 0); wr_addr: in std_ulogic_vector(7 downto 0); wr : in std_ulogic; rd1_addr :in std_ulogic_vector(7 downto 0); rd1 : in std_ulogic; data1_out ); end memory; architecture rtl of memory is type reg_type is array (0 to 3) of std_ulogic_vector(31 downto 0); signal reg_file : reg_type; begin write : process(clk,rst,data_in,wr_addr,wr) variable x_int : integer; begin if rst = '1' then reg_file(0) <= (others => '0'); reg_file(1) <= (others => '0'); reg_file(2) <= (others => '0'); reg_file(3) <= (others => '0'); x_int:=0; else if clk'event and clk = '1' then x_int:=to_integer(unsigned(wr_addr)); if wr = '1' then reg_file(x_int) <= data_in; end if; end if; end if; end process; read1 : process(clk,rst,rd1_addr,rd1) variable x_int : integer; begin if rst = '1' then data1_out <= (others => '0'); else if clk'event and clk = '1' then x_int:=to_integer(unsigned(rd1_addr)); if rd1 = '1' then data1_out <= reg_file(x_int); end if; end if; end if; end process; end rtl; ------------------------------------------------------------------- -- END: Memory ------------------------------------------------------------------- I use the Xilinx ML300 Board as FPGA, would be very thankful if somebody could point out the problem! Philipp Philipp Grabher |
|
|
|
|
#2 |
|
Posts: n/a
|
Philipp Grabher wrote:
> Currently I am implementing my own IP Really? > which I wanna add to the FSL of the > Microblaze soft processor. But unfortunately I have problems with the RAM I > programmed. Although it is fully synthesizeable it doesnt work the way I > want it to on the FPGA. In the simulation it looks good to me, so probably > there is some syntax I use which causes problems on the FPGA. This design has already been critiqued elsewhere in this newsgroup. -- Mike Treseler Mike Treseler |
|
![]() |
| Thread Tools | Search this Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Comcast + Wireless Internet Problem | shadoweloc | General Help Related Topics | 1 | 07-01-2008 06:19 PM |
| Dial Up Problem | smackedass | A+ Certification | 3 | 02-02-2007 11:59 PM |
| Re: Virus Problem ** Help!** | David BlandIII | A+ Certification | 1 | 03-02-2004 06:00 PM |
| Re: Serious Computer Problem | hootnholler | A+ Certification | 1 | 11-24-2003 12:18 PM |
| Re: Serious Computer Problem | Bret | A+ Certification | 0 | 11-19-2003 12:51 AM |