fpga

FPGA数据舍入方式

让人想犯罪 __ 提交于 2019-11-26 20:02:11
1,在Verilog代码中,常用的代码写法为直接截位; 2,在Vivado的IP核中常见的两种舍入方式为Truncation和Rounding, 3,在Matlab中常见的四种舍入函数为floot, round, fix, ceil。 为了方便Matlab定点程序与Verilog硬件程序间对数据(debug),可统一使用截位的方式。具体如下: 1,Verilog代码直接截位; 2,IP核参数选Truncation; 3,Matlab函数使用floor。 [引用]: 1, http://www.yanglajiao.com/article/u011435907/77989787 2, http://xilinx.eetrend.com/d6-xilinx/blog/2017-10/12095.html 来源: https://www.cnblogs.com/achangchang/p/11331931.html

FPGA实现RAM--LPM_RAM

半世苍凉 提交于 2019-11-26 20:01:50
  我们知道,RAM 是用来在程序运行中存放随机变量的数据空间,使用时可以利用QuartusII的LPM功能实现RAM的定制。   软件环境:QuartusII 11.0   操作系统:win7 实现方法一、利用LPM_RAM: 1.首先准备好存储器初始化文件,即.mif文件。   该文件的生成方法见《 如何生成mif文件 》;   本文预先生成了一个正弦波的数据文件,TEST1.mif,可以在QuartusII中打开,以便查看内容:【file】/【open】,在文件类型中选择memory files,打开TEST1.mif,内容如下: 2.生成LPM_RAM块   1)在QuartusII中,【tools】/【megawizard plugin manager】,打开向导,选择【memory compiler】文件夹下的RAM:这里选择单口RAM, 即:RAM:1-PORT,命名为RAM1P:      2) 设置存储深度为128,数据宽度为8bit、选择嵌入式 M4K RAM 实现、使用单时钟方案:      3)取消选择“数据输出锁存”,不需要时钟使能端:   4) 使用 mif 初始化该 RAM 块、允许“在系统 (In System) 存储器读写”,并将此RAM的ID设置为RAM1:   载入前面生成的存储器初始化文件:TEST1.mif; ID主要用于多RAM系统时

How to count pressed keys on FPGA spartan board

眉间皱痕 提交于 2019-11-26 18:38:54
问题 I`m using FPGA Spartan 2 board and want to count the keys pressed from Keyboard this is my VHDL code : library ieee ; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; use ieee.numeric_std.all; ENTITY Keyboard IS PORT(CLOCK : IN STD_LOGIC; RESET : IN STD_LOGIC; RK : IN STD_LOGIC_VECTOR(3 DOWNTO 1); DE : OUT STD_LOGIC_VECTOR(3 DOWNTO 1); Invalid_Key : OUT STD_LOGIC := '0'; Seg1 : OUT STD_LOGIC_VECTOR(7 Downto 0); Seg2 : OUT STD_LOGIC_VECTOR(7 Downto 0)

转 让FPGA替代GPU的6大顾虑,你确定不看看吗?

不问归期 提交于 2019-11-26 14:33:05
最近FPGA又频频被各AI领域的巨头看好,比如微软、百度、科大讯飞都对FPGA应用前景有所期待。那么如果让你选择FPGA作为AI计算系统的主力军,你会有什么样的顾虑? 这几天,已经退役的AlphaGo又强行刷了一波头条,不是又跟哪位世界高手对决,而是“新狗”通过无监督式学习,仅用3天时间就战胜了李世石版的AlphaGo,然后用了21天时间战胜了柯洁版本AlphaGo。AlphaGo让我们真真切切地看到了AI计算的强大。    目前,在AI计算平台使用最广泛的两种加速部件是GPU和FPGA。GPU可适用于具备计算密集、高并行、SIMD(SingleInstructionMultipleData,单指令多数据流)应用等特点的深度学习训练模型领域,并且GPU创建了包含CNN、DNN、RNN、LSTM以及强化学习网络等算法在内的应用加速平台和生态系统。 但是,最近FPGA又频频被各AI领域的巨头看好,比如微软、百度、科大讯飞都对FPGA应用前景有所期待。那么如果让你选择FPGA作为AI计算系统的主力军,你会有什么样的顾虑? 顾虑一:FPGA有啥优势?什么样的场景更适合FPGA? 首先,深度学习包含两个计算环节,即训练和推理环节。GPU在深度学习算法模型训练上非常高效,但在推理时对于小批量数据,并行计算的优势不能发挥出来。而FPGA同时拥有流水线并行和数据并行,因此处理任务时候延迟更低

Xilinx开发套件类型

梦想与她 提交于 2019-11-26 10:34:42
  最近想用 FPGA 实现深度学习,想用 ZYNQ 开发板,目前的状态是正在学习。看到一篇文章,是在 VC709 上实现的 AlexNet ,这是一块 Xilinx 推出的一个开发套件,想去查一下 VC709 这个开发套件是不是一个 SoC ,就是想知道是不是由 ARM 和 FPGA 一起构成的。但是呢,不知道怎么查,后来对比了两款 Xilinx 的开发套件, VC709 和 ZC706 之后找到了区分一个开发套件是否属于 SoC 的方式。   在 特色 Xilinx 器件 的描述中,对于 VC709 的描述是这样的:符合 ROHS 规范的 VC709 套件,包含 XC7VLX690T-FFG1761C ,而在 ZC706 中的描述是:包含符合 ROHS 的 ZC706 ,包括 XC7Z045 FFG900–2 SoC ,如果是 SoC 则会直接写出来,如果单是 FPGA 的话就写的是 FPGA 。确定了这两个套件分别是 FPGA 和 SoC 之后,我发现这两个信息就写在套件名字里边。两个套件的名字分别是 Xilinx Zynq-7000 All Programmable SoC ZC706 评估套件 和 Xilinx Virtex-7 FPGA VC709 连接功能套件 ,这种感觉就像,钥匙怎么找也找不到,后来发现就在自己手里。   知道这两个开发套件的性质之后,就想知道

fpga IO双向口问题

断了今生、忘了曾经 提交于 2019-11-25 22:13:45
IOBUF双向口原语: 帖子中的如何使用代码如下: module xxxx( inout data_io ); wire data_i ; // to your own logic wire data_o; // from your own logic wire data_t; // from your own logic to control the direction of the IOBUF IOBUF IOBUF_inst ( .O (data_i), .IO (data_io), .I (data_o), .T (data_t) ); endmodule 来源: oschina 链接: https://my.oschina.net/u/2963604/blog/3132470