реклама на сайте
подробности

 
 
> SDRAM model
khan
сообщение May 15 2006, 20:09
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 26
Регистрация: 6-08-04
Из: Minsk, Belarus
Пользователь №: 462



Здравствуйте!

Ищеться модель памяти SDRAM для модуля 128Mb (8Mbx16)
Может у кого есть готовая, самому лень писать :-)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
BuTeK
сообщение May 16 2006, 19:37
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 67
Регистрация: 25-04-06
Из: Беларусь, Гомель
Пользователь №: 16 450



Может у кого-нибудь есть модель на VHDL, а то с Verilog не знаком. И только начинаю осваивать VHDL, если у кого есть поделитесь.. очень надо.. помогите начинающему программисту.. help.gif

Сообщение отредактировал BuTeK - May 16 2006, 19:38
Go to the top of the page
 
+Quote Post
khan
сообщение May 17 2006, 08:22
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 26
Регистрация: 6-08-04
Из: Minsk, Belarus
Пользователь №: 462



Цитата(BuTeK @ May 16 2006, 23:37) *
Может у кого-нибудь есть модель на VHDL, а то с Verilog не знаком. И только начинаю осваивать VHDL, если у кого есть поделитесь.. очень надо.. помогите начинающему программисту.. help.gif


Есть уже и на VHDL :-)
Давай мыло скину ...
А вообще нет разницы на чём модель.
Все современные симуляторы поддерживают "смешенное моделирование".
И разбираться с верилогом совсем не обязательно.


Возможно как "начинающему программисту" тебе нужно чё то попроще.
Простая модель памяти описана в доке к ModelSim ("Modelling Memory UM-108")

library ieee;
use ieee.std_logic_1164.all;
use work.conversions.all;

entity memory is
generic(add_bits : integer := 12;
data_bits : integer := 32);
port(add_in : in std_ulogic_vector(add_bits-1 downto 0);
data_in : in std_ulogic_vector(data_bits-1 downto 0);
data_out : out std_ulogic_vector(data_bits-1 downto 0);
cs, mwrite : in std_ulogic;
do_init : in std_ulogic);
subtype word is std_ulogic_vector(data_bits-1 downto 0);
constant nwords : integer := 2 ** add_bits;
type ram_type is array(0 to nwords-1) of word;
end;

architecture style_93 of memory is
------------------------------
shared variable ram : ram_type;
------------------------------
begin
memory:
process (cs)
variable address : natural;
begin
if rising_edge(cs) then
address := sulv_to_natural(add_in);
if (mwrite = '1') then
ram(address) := data_in;
end if;
data_out <= ram(address);
end if;
end process memory;
-- illustrates a second process using the shared variable
initialize:
process (do_init)
variable address : natural;
begin
if rising_edge(do_init) then
for address in 0 to nwords-1 loop
ram(address) := data_in;
end loop;
end if;
end process initialize;
end architecture style_93;
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 02:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01374 секунд с 7
ELECTRONIX ©2004-2016