FPGA Player

好记性不如烂笔头

导航

2012年8月14日 #

乘法器之三(半并行乘法器)

摘要: 2) 半并行乘法器(Semi-parallel multiplication)半并行乘法器将输入乘数的部份位乘上被乘数或者系数,然后将每次得到的部份积移位累加后得到乘法结果。举个例子,一个16位输入总线可以被分成四组四位,四组数据被依次送到RAM块的地址端口,每个时钟送入一组,低四位先送。在每个时钟周期,RAM块依次输出每一组数据和系数相乘的结果。图10显示了是如何分解一个16位输入、14位系数来实现半并行乘法操作的。图11显示了用一个M512RAM LUT实现图10所示的半并行乘法器。实现方法是在每个时钟周期加载四位输入到RAM块,根据权位通过移位累加每个时钟周里RAM块输出的部份积,在六个 阅读全文

posted @ 2012-08-14 21:54 中国的孩子 阅读(794) 评论(0) 推荐(0) 编辑

分布式乘法器

摘要: module distributed#(parameter width=3,parameter width2 = 8)/*调试错误一*/(input clk,input [width - 1 : 0] in_data,output [width2-1 : 0] out_data,output[3 :... 阅读全文

posted @ 2012-08-14 20:15 中国的孩子 阅读(422) 评论(0) 推荐(0) 编辑

用MATLAB生成mif文件

摘要: 程序: mif 文件格式: 首先设置每个字宽WIDTH和总的字数,然后设置地址数和数据的进制基数无符号数为(UNS) 对于HEX文件,用QURARTSII打开MIF文件另存为HEX文件即可。 注:生成MIF文件路径为‘。M’文件的路径所在。 阅读全文

posted @ 2012-08-14 08:40 中国的孩子 阅读(10346) 评论(1) 推荐(0) 编辑

2012年8月13日 #

乘法器之二(并行乘法器)

摘要: 5.用存储器块实现软乘法器可以用StratixII、Stratix和StratixGX M512或者M4K 和CycloneII和Cyclone的M4K RAM存储器块作为LUTs实现DSP应用中的乘法器。所有系数的组合会预先算好并保存在M512或者M4K中。RAM块的地址对应乘法器的一个操作数,每个地址内存放了一个唯一的计算结果,这个结果是基于要实现的乘法器的类型由输入操作数和一个已知的参数计算得到的。StratixII、Stratix、StratixGX、CycloneII和Cyclone器件支持的5种软乘法器的类型是:(1)并行乘法器(Parallel multiplication)-每 阅读全文

posted @ 2012-08-13 20:21 中国的孩子 阅读(4993) 评论(1) 推荐(1) 编辑

阵列乘法器

摘要: 希望大家看看,给指点一下,程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity ZL_multiplier isport(clk : in std_logic;reset : in std_logic;mul1 : in std_logic_vector(3 downto 0);mul2 : in std_logic_vector(3 downto 0);product : out std_logic_vector(7 downto 0));end ZL_multiplier;a 阅读全文

posted @ 2012-08-13 18:08 中国的孩子 阅读(927) 评论(0) 推荐(0) 编辑

四分之一平方乘法器(全变量乘法器)

摘要: 下面是对ALTERA关于乘法器的资料中对全变量乘法器的翻译:英文水平有限,还请多指教,希望大家多留言,我们可以讨论一下:全变量乘法器 全变量乘法器是输出和系数在第个时钟都可变的乘法器,全变量乘法器的分部结果存放在RAM块中,设计是基于代数表(a + b)2-(a - b)2 = 4ab;所以 a*... 阅读全文

posted @ 2012-08-13 09:27 中国的孩子 阅读(1055) 评论(0) 推荐(0) 编辑

2012年8月12日 #

MATLAB中的运算符和特殊字符说明

摘要: 符号 符号用途说明 + 加 - 减 .* 点乘 详细说明help arith * 矩阵相乘 ^ 矩阵求幂 .^ 点幂 \ 左除 详细说明help slash / 右除 .\ 点左除 ./ 点右除 kron 张量积 详细说明help kron , 作分隔用,如把矩阵元素、向量参数、函数参数、几个表达式分隔开来 ; (a)写在一个表达式后面时,运算后命令窗口中不显示表达式的计算结果 (b)在创建矩阵的语句中指示一行元素的结束,例如m=[x y z;i j k] : (a)创建向量的表达式分隔符,如x=a:b:c (b)a(:,j)表示j列的所有行元素;a(i,:)表示i行的所有列元素; a(1.. 阅读全文

posted @ 2012-08-12 20:01 中国的孩子 阅读(1230) 评论(0) 推荐(0) 编辑

MATLAB的取整函数:fix(x),floor(x),ceil(x),round(x)

摘要: (1)fix(x):截尾取整>>fix([3.12-3.12])ans=3-3(2)floor(x):不超过x的最大整数.(高斯取整)>>floor([3.12-3.12])ans=3-4(3)ceil(x):大于x的最小整数>>ceil([3.12-3.12])ans=4-3(4)四舍五入取整>>... 阅读全文

posted @ 2012-08-12 19:53 中国的孩子 阅读(278) 评论(0) 推荐(0) 编辑

模块调用时对参数值的更改

摘要: 当某个模块被另一个模块调用后,调用模块可以对被调用模块内的参数值进行更改由此可以通过 更改参数值来对被调用模块实现的功能进行控制。比如说我们可以设计一个加法器模块,该加法 器的位数由模块内的参数指定。这样,在对这个加法器模块进行调用时,我们只需要在调用时进行 一下参数更改就可以交同一加法器模块作为8位、16位、32位等任意位的加法器。 对参数值更改的两种方式: 1、使用带有参数值的模块实例语句; 格式如下: #(,,。。。) 如果只有一个参数,括号可省 “#” 例: module multibits_multiplier(... 阅读全文

posted @ 2012-08-12 08:37 中国的孩子 阅读(386) 评论(0) 推荐(0) 编辑

2012年8月11日 #

时序电路设计(状态机)

摘要: 1、状态机设计Mealy 机方框图状态寄存器输出当前的信号,用来控制下一个状态是什么,和当前状态下的输出是什么。Moore机方框图2、状态机---3种类型二元的:(CPLD与阵列扇入比较多,寄存器比较少)S1 = 001, S2 = 010, S3 = 011, S3 = 100,etc。。。枚举的... 阅读全文

posted @ 2012-08-11 08:54 中国的孩子 阅读(2478) 评论(0) 推荐(0) 编辑