在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2092|回复: 2

[求助] truncation &時鐘控制加法器

[复制链接]
发表于 2010-4-12 01:01:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 matt0123 于 2010-4-12 20:49 编辑

小弟是vhdl初學者,資質拙劣還請各位海涵。

1.truncation   2.時鐘控制加法器

近期研究主題是實現全數位的MASH(多級雜訊整形),其中包含了上述兩點問題
該如何以vhdl實現是我遇到的瓶頸,還請多多指教。





1.truncation  舉例輸入一11bit信號,輸出要分作4bit MSB與7bit LSB信號

我的想法如下,殊不知出了什麼紕漏否?
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY trunc IS
PORT( input :IN STD_LOGIC_VECTOR(10 DOWNTO 0);
           msb :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
           lsb   :OUT STD_LOGIC_VECTOR(6 DOWNTO 0);
END trunc;

ARCHITECTURE aa OF trunc IS
BEGIN

msb(3 DOWNTO 0) <= input(10 DOWNTO 7);
lsb(6 DOWNTO 0) <= input(6 DOWNTO 0);

END aa;



2.時鐘控制加法器:想要加法器在正緣觸發時才進行訊號相加的動作

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity clk_fadd is
port (X,Y,Cin,clk: in std_logic;
        Cout,Sum: out std_logic);
end clk_fadd;

architecture logic of clk_fadd is
begin
Sum <= X xor Y xor Cin when clk'event and clk='1';
Cout <= (X and Y) or (X and Cin) or (Y and Cin) when clk'event and clk='1';

end logic;
发表于 2010-4-12 08:28:43 | 显示全部楼层
truncation中msb(3 DOWNTO 0) <= input(11 DOWNTO 7);这一赋值语句的两端位数不一致,左边是4位,右边是5位。

时钟控制加法器中,看上去好像也没有啥问题的,不过你可以尝试一下用进程的方式来写
     process(clk)
            begin
                if clk'event and clk='1' then
                   Sum <= X xor Y xor Cin;
                  Cout <= (X and Y) or (X and Cin) or (Y and Cin) ;
               end if;
       end process;

   要是仿真时结果出不来,有可能是因为没有复位信号,输入信号的初始态定不下来,所以结果出不来,届时可在代码中加入复位信号再试试
 楼主| 发表于 2010-4-12 12:37:08 | 显示全部楼层
感謝qlengyu大大不吝指教,第一個部分truncation的位元數是我疏忽打錯了。

時鐘控制加法器的部份我先前亦有試過大大這方法,但出現了我另一篇發文裡頭的錯誤碼。
一度以為我的vhdl程式出了問題,現在看來應該是xilinx需要重灌。

再次感謝qlengyu
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 13:45 , Processed in 0.018987 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表