`俺是 FPGA的小白,从工作开始才接触FPGA,至今云里雾里,但求用最简洁的语言,说说这些。帖子会持续更新,也是自我监督。
由于兜兜转转,最终在FPGA这里停了下来,之前接触过的是C语言, 单片机,也许下一步走的是ARM7到其他,却由于多个项目不得不接触FPGA,先前已经学过相关的数字 电路,但是对FPGA的概念还是比较模糊,单单停留在文字上。
现在断断续续接触了FPGA的相关知识已经快三个月,特此整理一些学习的知识,目前也在逐步学习中,希望和大家多交流。`
|
|
|
|
开发工具的下载,安装,破解(一)
Altera 所使用的开发平台是 Quartus II 这里后续使用的语言均为Verilog HDL
关于 Quartus II 软件的安装和其他相关软件的安装和破解如下所示:
提示:需要去官网下载,官网提供最新版本的软件,需要在官网注册一个账号以此来下载。
官网地址:https://www.altera.com
具体操作参考网址(QuartusII 13.0下载 安装 破解):
http://blog.sina.com.cn/s/blog_9ebffc8001018d7d.html
关于如何打钩,也就是如何选择作为初学者的软件。
这里显示下载不单单是Quartus II,还有DSP Builder 以及 MoelSim-Altera ,DSP Builder是数字信号处理领域用的,比如一些FFT,FIR,ASK的模型建立,MoelSim-Altera是仿真软件,在Quartus II中完成描述后,再编写测试程序就可以通过MoelSim-Altera仿真来看到时序。
Devices也就是选择的设备的意思,比如我们使用的是Altera的Cylone II 系列的芯片就选择Cylone II,如果电脑电脑下载速度较慢的话,其他可以选也可以不选,因为暂时用不到,反之,就都选。
上面所提到的破解是关于Quartus II的,如果是关于DSP Builder的,接下来会陆续提到。
|
|
|
|
|
本帖最后由 matang7 于 2015-2-11 15:43 编辑
续:
用到DSP Builder呢是需要用到Matlab的,因为涉及到建模,这个需要simulink,而Matlab的版本和DSP Builder的版本需要配套的,如下图所示:
http://www.altera.com.cn/products/software/products/dsp/dsp-builder.html
上述链接是关于DSP Builder的,有用户手册及其他
我这里用的电脑操作系统是XP,Quartus II 13.0 ,DSP Builder 13.0 ,Matlab 2012a 。
如果用不到DSP Builder的可以忽略。
在下载Quartus II的时候已经顺带下载了DSP Builder,这时候只需要破解就成。具体操作如下所示:
http://www.amobbs.com/thread-5547108-1-1.html
1.必须安装并破解Quartus ii 13.0 和 Matlab R2012a(或更高)。
2.官网下载DSP builder 13.0并安装,过程中有让选择Matlab版本,这点要注意。
3.搜索“dsp builder 12.0破解” ,按那个方法来破解DSP builder 13.0(把文中说到的位置由12变为13即可)。http://www.cnblogs.com/hubu9527/archive/2012/07/28/2613580.html
4.设置环境变量:(win7)右键我的电脑-属性-高级系统设置-高级-环境变量-系统变量,找“LM_LICENSE_FILE”,没有就新建一个 (没有引号),把值改为步骤2中license文件的位置,如我的“C:altera13.0license.dat”(没有引号)。注意:如果“LM_LICENSE_FILE”中有值存在,则在值后面加个英文的分号“;”,再把license文件位置加在后面。
XP是右键我的电脑-属性-高级-环境变量-系统变量
变量值这里你工具软件安装在哪个盘就去哪个盘找,比如我安装在D 盘。LM_LICENSE_FILE只有一个,也就是这个变量名称只能用一次,那么多个破解后的license文件放在不同的地方怎么办?这个的解决方法就是把各个破解后的license文件用记事本打开,复制里面的所有内容到我们这唯一一个的LM_LICENSE_FILE所在的地址license文件中。如下图所示,我们的quartus和dsp_builder和modelsim se的license的内容都在这个quart的license的文件下。
5.打开“开始-Altera 13.0.0.156-DSP Builder 13.0.0.156-Start in MATLAB R2012a (32-bit)”。第一次要从这里打开,否则可能会在Matlab中找不到DSP builder。
6.在Matlab中输入 dos('lmutil lmdiag C4D5_512A') 如果显示为
This is the correct node for this node-locked license
相似的便成功破解。
如果在以后发现DSP的组件没了, 就是如左边的图所示,发现这两个没了之后,卸载dsp_builder 重新安装,重新破解,就可以回来。
7.按DSP builder教程操作(自行搜索吧),成功生成了一系列.VHD文件,在Quartus II 中加入生成的qip文件,便可调用之。
|
|
|
|
|
把quartus ii 13.0 dsp_builder 13.0 modelsim 10.1 破解文件和说明传上来。
|
|
|
|
|
本帖最后由 matang7 于 2015-3-9 09:03 编辑
好了,我们现在先把Quartus II 用起来,通过一个简单的例子来说明。
Quartus II新建一个工程文件:
我们需要弄下工程名,因为后面的程序要和这个名字一样,不一样会报错。
这里可以选择已有文件,也可以新建一个文件(点击next就是要自己新建的意思)
选择器件系列,具体型号
选择仿真软件,语言,我们选的是modelsim_altera ,因为我们之前下过,并破解过,语言是仿真里面的语言选择。
新建一个空白的Verilog HDL 文件
我们先从基本逻辑电路设计开始,基本逻辑电路是数字系统设计中最基本的模块,基本逻辑电路下有组合逻辑电路,时序逻辑电路,要是再细分下去,可以看看《电子技术基础数字部分(第五版)》,组合逻辑电路里有我们熟悉的门电路,就是常说的与或非,这个实现的方式有多种,具体在参考2这本书里面可以知道。 我们先做一个3-8译码器,额庆祝妇女节啥的, 具体代码如下,我们来通过这段代码知道一些语句。 module decode38 ( //input data_in, rst ,
//output y );
//input ports input [2:0] data_in ; input rst ;
//output ports output [7:0] y ;
//reg define reg [7:0] y ;
/******************************************************************************************************* ** Main Program ** ********************************************************************************************************/ always @(data_in or rst ) begin if (!rst ) y = 8'b0; else case (data_in ) 3'b000: y = 8'b11111110; 3'b001: y = 8'b11111101; 3'b010: y = 8'b11111011; 3'b011: y = 8'b11110111; 3'b100: y = 8'b11101111; 3'b101: y = 8'b11011111; 3'b110: y = 8'b10111111; 3'b111: y = 8'b01111111; default:y = 8'bxxxxxxxx; endcase end
endmodule
首先模块的名字要和前面设置的一样。 always @(data_in or rst ) 从参考2里的107页知道当事件控制中的敏感事件是由多个表达式组成的时候,我们用关键词or或者逗号来隔开。begin……and 是顺序语句块,语句块中的语句按照给定次序顺序执行,可以理解成C语言里的大括号{},case……endccase 这里的case是这么用的。
点击全编译
无重大错误,编译通过。
点击OK 参考文献[1]:SF-CY3 FPGA套件开发指南Ver7.10 (by特权同学)
参考文献[2]:《Verilog HDL入门》(第3版) ---(美)巴斯克 著,夏宇闻,甘伟 译 参考文献[3]:《Altera FPGA 工程师成长手册》
PS: 特权同学的参考资料,其实在他的博客有更新,差不多和这个pdf一样,可看看。 参考3的这本书是讲ALtera的,用的VHDL语言,但是有部分是直接在网上能找到的,就是一模一样的,书里有较多是照抄Altera中文使用手册的。
|
|
|
|
|
本帖最后由 matang7 于 2015-4-14 16:43 编辑
quartus ii 用完 就到仿真部分了,这里结合第三方工具modelsim进行仿真,具体稍后更新。这部分参考文献是《modelsim电子系统分析及仿真(第2版)》 --于斌 谢龙汉 里面用的仿真版本教新,希望大家伙耐心些看,仿真这里非常重要,《modelsim电子系统分析及仿真(第2版)》 书有演示视频,放上在quartus ii 调用modelsim se的视频,需要TSCC解码,以及附上文件。
安装步骤
Modelsim se 10.1c 的安装和破解 双击.exe
安装路径:c/modeltech_10.1c
点击yes
点击agree
选择
No 之后先放着,等待license的对话框出来,不用关掉,接下来先破解,破解会产生license,txt文件,选择这个文件,点击Ok
破解步骤(quartus ii)
1.将MentorKG.exe,patch_dll.bat复制到10.1安装目录的win32目录下 2.以管理员权限运行patch_dll.bat,破解完成后会生成一个LICENSE.TXT文件 3.修改环境变量MGLS_LICENSE_FILE将其值该为第二步生成的文件,例如:E:modeltech_10.1LICENSE.TXT; 如果第二步不行以管理员权限打开命令提示行,将当前目录切换到modelsim的win32目录运行patch_dll.bat 例如我将modelsim安装到E盘 打开命令提示行显示 c:usersadmin> 输入 cd d E:modeltech_10.1win32patch_dll.bat回车 等待破解完成后保存生产的TXT文件完成第3步; 破解步骤 (ISE)
Modelsim-se-10.1c-win32+Crack
1 关闭杀毒软件,安装MODELSIM 10.1c,安装过程中弹出的界面选择“NO”
2 安装完成后复制MentorKG.exe和patch_dll.bat到Modelsim安装目录的win32目录下
3 以管理员的权限(如果是win7,XP直接运行)运行patch_dll.bat,将生成的文件另存为LICENSE.TXT
4 新建环境变量MGLS_LICENSE_FILE指向LICENSE.TXT,MODELSIM破解完成
5 将Modelsim安装目录下的modelsim.ini文件只读属性去掉
6 打开modelsim.ini文件找到Voptflow 值改为 0
7 打开命令提示符输入“set path=D:Xilinx14.2ISE_DSISEbinnt;D:modeltech_10.1cwin32”(不要引号),D:..为你 安装ISE和MODELSIM的目录,改为自己的目录
8 然后输入compxlib -s mti_se -l all -arch all -lib all -w -exclude_superseded -dir D:modeltech_10.1cXilinx_lib 开始编译XILINX仿真库,等待完成,如果0 error则正确,D:..为你安装MODELSIM的目录,改为自己的目录
9 打开Xilinx_lib下的modelsim.ini文件,复制others下面不是以分号开始的语句直到VCOM行结束,粘贴至Modelsim安装目录下的modelsim.ini文件中的vital2000 = $MODEL_TECH/../vital2000语句后
10 修改modelsim.ini文件为只读属性
参考来源 : |
|
|
|
|