需要帮助的并行到串行的VHDL模块

M

missbirdie

Guest

我对下面的VHDL代码转换的问题
, 从并行到串行:

图书馆电机及电子学工程师联合会;
使用IEEE.STD_LOGIC_1164.ALL;
使用IEEE.STD_LOGIC_ARITH.ALL;
使用IEEE.STD_LOGIC_UNSIGNED.ALL;

实体PAR2SER是
港口(德国工业标准:在STD一LOGIC类型;
模式:在STD一LOGIC类型;
时钟在STD一LOGIC类型:;
复位:在STD一LOGIC类型;
SDOUT:出STD一LOGIC类型);
结束PAR2SER;

-目的:实现主体结构的PAR2SER

架构PAR2SER行为是

信号IDATA:std_logic_vector(7 downto 0); -内部数据

开始-行为

-用途:主要过程

进程(时钟,复位)
开始-过程
由异步复位(高有效引发-活动)
如果复位= 1,则
SDOUT“= 0;
IDATA“=”00000000“;

时钟上升边沿触发-活动

elsif时钟事件和CLK = 1,则
案件模式是
当“00”=“ -无操作
空;
当“01”=“ -负荷运行
IDATA“=依据DIN;
当“10”=“ -左移
SDOUT“= IDATA(7);
为mloop 6 downto 0环
IDATA(mloop 1)“= IDATA(mloop);
结束循环; - mloop
当别人=“ -任何操作
, 否则
空;
结束案件;
如果结束;
结束进程;
为此行为;

我可以愚蠢
, 但声音是什么模式针??

 
提交人显然认为是有用的控制与运作模式输入序列。还有其他的选择,也。你必须知道您的要求。

但代码有语法错误,导致模输入是一个单一的锁相环位
, 但作为一个载体。它不能编译原样。

 
真正的有限体积法说什么。
而且我告诉你
, 这是一个非常糟糕的代码方式的VHDL。
在构建决不会被用于:这不是在“C”。

您可以在不同的方式很多,更好的
, 我认为是计数器和实例使用移位寄存器。
在VHDL语言你搞清楚什么是你的拖鞋实现。

 
如在这个地方行,它只是另一个(长篇大论)的方式写移位寄存器循环。这是同样的功能在一个行:
代码:

IDATA(7 downto 1)“= IDATA(6 downto 0);
 

Welcome to EDABoard.com

Sponsor

Back
Top