-1

谁能帮我提供一个链接,通过在 VHDL 中使用有限状态机来提供内存单元和控制单元的设计?

我需要设计电路的架构。

非常感谢!

4

2 回答 2

0

有很多在线资源可以帮助您。例如这里

architecture style_87 of memory is
begin
memory:
process (cs)
    -----------------------
    variable ram : ram_type;
    -----------------------
    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;
end style_87;

在这里

process(currentstate, a)
begin
    b <= '1';
    c <= '1';
    case currentstate is
        when s1 =>
            if (a = '1') then
                c <= '0';
            end if;

            nextstate <= s2;

        when s2 =>
            -- b doesnt change state from s1 to here, do I need to define what it is here?
            if (a /= '1') then
            c <= '0';
        end if;

        nextstate <= s3;

    when s3 =>
        if (a = '1') then
            b <= '0';
            c <= '0';
        end if;

        nextstate <= s1;
    end case;
end process;

我相信你可以自己谷歌很多其他的例子。

于 2013-07-29T19:52:58.623 回答
0

第 10 章有限状态机:原理与实践 (PDF, 274KB) 出书,作者 Pong P.Chu,使用 VHDL 进行 RTL 硬件设计,编码效率、可移植性和可扩展性。

请参见图 10.3 内存控制器 FSM 的状态图。请注意,本章没有直接演示模型,它会教您设计模型所需的所有知识,而无需详述实现特定的设备时序或内存控制器。

在一些课程幻灯片、使用 VHDL 有限状态机 ECE 443 的硬件设计以及其他章节内容和一些实现内存控制器的 VHDL 源代码中可以找到相同的状态图。

于 2013-07-29T21:49:04.373 回答