12 2012 档案

摘要:fprintf函数和fscanf函数和printf和scanf相比,就是多了个f前缀,这个f当然就是指的file,也就是文件了,后两者是操作的对象是终端设备,前者则是针对磁盘文件的操作,因此fprintf函数和fscanf函数就是了C语言中文件的格式化输入输出函数。 学C语言,老师就要布置作业的吧,作业做什么呢?一般都是做学生成绩管理系统吧,那就要设计个数据结构保存学生的信息吧,姓名、学号、成绩等等的,用什么好呢,那当然是结构体struct了。struct student{ char chName[20]; //姓名 int nID; //学号... 阅读全文
posted @ 2012-12-29 19:26 天马行空W 阅读(9103) 评论(1) 推荐(0)
摘要:(转自:真OO无双)http://www.cnblogs.com/oomusou/archive/2008/02/11/1066839.htmlAbstractVerilog雖然為硬體描述語言,亦提供讀取/寫入文字檔的功能。Introduction為什麼需要用Verilog讀取/寫入文字檔呢?主要用在寫Testbench,並且有兩個優點:1.資料處理的個數不需寫死在Testbench內。2.文字檔可以用其他更強大的語言產生,如C/C++、Python。3.將資料輸出到文字檔後,可用其他語言分析,如C/C++、Python、Excel。Verilog1/* 2 (C) OOMusou 2008 阅读全文
posted @ 2012-12-29 18:57 天马行空W 阅读(3322) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/dangxia/archive/2012/03/10/2389685.html今天看代码时遇到了integer,只知道这是个整数类型,可详细的内容却一窍不通,查看了资料---《verilog数字VLSI设计教程》。其中是这么写到的:大多数的矢量类型(reg或者net)都被默认当做无符号数。integer和real是个例外,它们被默认为当做有符号数。通常,real类型是不可综合的。假设在没有溢出的情况下,不管是无符号数还是有符号数,它们都是二进制的一串数值而已;而当这个值被当做某种类型比较时:又符号数的MSB被用来表示这个数字的符号,而无符号数的MS 阅读全文
posted @ 2012-12-29 10:33 天马行空W 阅读(19153) 评论(0) 推荐(0)
摘要:文章出处http://www.cnblogs.com/tureno/articles/2325739.html下载地址:ed2k://|file|%5B%E9%80%BB%E8%BE%91%E7%BB%BC%E5%90%88%E5%B7%A5%E5%85%B7%5D.Synplify.Premier9.6.2_with_crack.rar|325703858|1ca20ff5b20dddec88b6d29e5ec31907|h=5k7r3twrk4ts2iqcoezqbldvym2pklgi|/复制上面的地址到迅雷,内含有破解文件但破解方法不全面结合下面的内容破解即可完成(自己已经在win7旗 阅读全文
posted @ 2012-12-28 10:31 天马行空W 阅读(2218) 评论(0) 推荐(0)
摘要:由于要对FPGA读写SDRAM的工程进行调试,第一步就是验证PLL模块的功能,故结合网上找的一些资料,进行了如下PLL仿真实验。下面是仿真的全过程首先,看一下Quartus中的PLL模块:从上面图中可以看出:我的FPGA输入时钟是20MHZ,该PLL有三个输出,其中C0:5倍频,100MHZC1:1倍频,20MHZC2:5倍频,100MHZ,同时相对于C0延时2ns,也就是72度的相位差。下面,新建一个Modelsim的工程。然后在工程目录下新建两个文件夹,分别为src以及modelsim,如图所示下面,给工程添加库文件,源文件以及激励文件:首先,添加库文件,在quartus目录下(E:\Al 阅读全文
posted @ 2012-12-25 11:46 天马行空W 阅读(1256) 评论(0) 推荐(0)
摘要:文章转自:http://blog.csdn.net/ruby97/article/details/7348939由于仿真FIFO需要时钟资源,故使用了前一篇文章中使用的PLL模块。在仿真FIFO模块时,我使用了一个数据发生模块,参考的下面这篇文章中的源码datagene.v(可以去链接网址下载源码)数据发生模块的输入输出框图如下所示:我在Modelsim中利用了该模块进行FIFO的仿真。若对FIFO的IP核不熟悉,可以参考官方文档:http://www.altera.com/literature/ug/ug_fifo.pdf下面是具体仿真过程:首先,看一下FIFO配置:数据单元位宽:16FIF 阅读全文
posted @ 2012-12-25 11:25 天马行空W 阅读(2103) 评论(0) 推荐(0)
摘要:1.打开文件 integer file_id; file_id = fopen("file_path/file_name");2.写入文件:$fmonitor,$fwrite,$fdisplay,$fstrobe //$fmonitor只要有变化就一直记录 $fmonitor(file_id, "%format_char", parameter); $fmonitor(file_id, "%m: %t in1=%d o1=%h", $time, in1, o1);//$fwrite需要触发条件才记录 $fwrite(file_id, 阅读全文
posted @ 2012-12-21 17:42 天马行空W 阅读(28480) 评论(1) 推荐(1)
摘要:在verilog中有$readmemh(“filename”, mem_name)命令,在使用这个命令时,”filename”中的路径要用反斜杠’/’,而不是斜杠’\’。如$readmemh("F:/mydesigen/re_input.txt",re_input);上面的语句是正确的,而如果用斜杠就有问题,如$readmemh("F:\mydesigen\re_input.txt",re_input);对于需要的txt文件,其格式为每行一个数据,例如用matlab产生文件则可以这样写fid0 = fopen('F:\mydesigen\re_i 阅读全文
posted @ 2012-12-19 21:31 天马行空W 阅读(42821) 评论(0) 推荐(2)
摘要:在单独使用Modelsim有时候需要自己独立书写testbench,对于应用QII所自带的Start testbench Template writer确实方便,但是有时对于一个小的独立模块进行仿真时就需要独立调用Modelsim,这样在Modelsim中编写testbench,下面对于testbench的书写总结一下。 首先在写testbench时,应注意名称要和自己待仿真的工程名称要对应,比如自己的待仿真文件名称叫grey_even,那么对于teshbench的名称则取一个叫grey_even_tst,在书写testbench module name则取名叫grey_even_vlg_t. 阅读全文
posted @ 2012-12-19 13:15 天马行空W 阅读(3603) 评论(0) 推荐(1)
摘要:http://www.cnblogs.com/creat/archive/2010/12/11/1902799.html 白平衡在一般的图像处理书籍都很少会提及,因为说到底白平衡只是一种对人眼视觉特性的模拟,说不上是对图像这个二维数据域的空间变换。简言之,白平衡是传感器设备具备正确识别“白色”的能力。 我们先来看白平衡的“白”是什么。不同的光源具有不同的光谱成分和分布,这在色度学上称之为色温(色温是颜色的定义,以K(凯氏)为单位;对黑体(黑铁棒)加热,3200K时黑体发出的颜色定为白色;5600K时定为蓝色等;在Microsoft Picture Managemnet中色温称为色值)。物体.. 阅读全文
posted @ 2012-12-18 16:45 天马行空W 阅读(1947) 评论(0) 推荐(0)
摘要:问题一:在控制摄像头的SCCB时,SDA必须接一个上拉电阻,不然的话输出肯定为0。问题二:在DE2摄像头中有这么一句代码,wire I2C_SDAT=SDO?1'bz:0 ;为什么SDO为1时,输出的为高阻,而非高电平呢。由这两个问题我们就引出了OD电路的问题。其实我们的IIC使用的是Open_Drain架构。推挽与开漏漏极直接输出,不接上拉电阻。如果对于场效应管印象不深,理解为普通三级管好理解:就是集电极开路。参考资料:A:先来说说集电极开路输出的结构。集电极开路输出的结构如图1所示,右边的那个三极管集电极什么都不接,所以叫做集电极开路(左边的三极管为反相之用,使输入为“0”时,输出 阅读全文
posted @ 2012-12-18 16:29 天马行空W 阅读(473) 评论(0) 推荐(0)
摘要:看到de2程序中wire I2C_SDAT=SDO?1'bz:0 ;当时觉得SD0的状态要是1的话,则高阻则做作为输入,而作为输出地话只有0状态,这样是不是不对??上网找了一些资料·~发现也是潜规则,同学说跟485的规则差不多~~来自~~http://www.cnblogs.com/yuphone/archive/2010/11/01/1866662.html解释如下:对于主机来说,要使得SDA作为输入口,就必须先将其拉成高阻态。而SDA作为输出口的情况下,就有一个技巧,不仔细还真有点难以捉摸:主机输出高电平, 可以直接输出高电平;也可以输出高阻,由于接有上拉电阻,因此从机会 阅读全文
posted @ 2012-12-18 16:24 天马行空W 阅读(922) 评论(0) 推荐(0)
摘要:FFT IP core的总体架构分析:FFT分为fixed transform size architectture 和 variable streaming architecture。variable streaming architecture下又分为radix-22和radix-4/2两种运算结构,而内部数据运算表达方式可分为fixed point ,floating point 和block floating point三种。、数据输入输出方向有可以分为natural order bit-reverse or digit-reverse 和DC centered方式。在运算时的核还可以 阅读全文
posted @ 2012-12-16 17:52 天马行空W 阅读(7366) 评论(0) 推荐(1)
摘要:文章来源:http://www.cnblogs.com/cloudseawang/archive/2007/02/06/641652.html 最近做HDR时,经常要用NV提供的16位纹理,它的说明书16位能达到24位的精度,就很奇怪?一直搞不懂浮点数的精度怎么算的?今天认真看了一下IEEE float point的标准,终于明白是什么了 1. 什么是浮点数 在计算机系统的发展过程中,曾经提出过多种方法表达实数。典型的比如相对于浮点数的定点数(Fixed Point Number)。在这种表达方式中,小数点固定的位于实数所有数字中间的某个位置。货币的表达就可以使用这种方式,比如 99.0... 阅读全文
posted @ 2012-12-16 11:14 天马行空W 阅读(633) 评论(0) 推荐(0)
摘要:看这个问题时,我通过查找发现了比较清楚的两篇文章:什么是定点数、浮点数?首先我们要认清一个概念,定点数不一定是整数,浮点数不一定是小数。 如其名,浮点数和定点数的区别就在于浮点和定点上,点就是指小数点。浮点数就是小数点是浮动的,定点数就是小数点是固定不动的。具体,什么是浮点数? 浮点数是在计算机中用以近似表示任意某个实数。具体的说,这个实数由一个整数或定点数(即尾数)乘以某个基数(计算机中通常是2)的整数次幂得到,这种表示方法类似于基数为10的科学记数法。 一个浮点数a由两个数m和e来表示:a = m × b^e。在任意一个这样的系统中,我们选择一个基数b(记数系统的基)和精度p(即 阅读全文
posted @ 2012-12-16 11:09 天马行空W 阅读(1248) 评论(1) 推荐(0)
摘要:简单得modelsim命令行仿真PART ONEModelSim之命令行仿真入门用do文件进行仿真真得很方便,比写testbench方便多了,采用do文件没有那么多信号定义,管理也比较方便.1.运行仿真,在主窗口输入命令:vsim work.实体名2.为时钟信号添加驱动,输入命令:force clk 0 0,1 10 -r 20,将仿真时钟设为50MHz;(设时间单位为ns)3.打开波形窗口,输入命令:view wave4.为波形窗口添加信号,输入命令:add wave -hex *,这里的*表示添加设计中所有的信号,-hex表示以十六进制来表示波形窗口中的信号值;5.开始仿真,输入命令,ru 阅读全文
posted @ 2012-12-12 20:34 天马行空W 阅读(6641) 评论(1) 推荐(2)
摘要:文章出处:http://www.cnblogs.com/asus119/archive/2011/04/01/2002525.html注:Queastasim中的命令行在view-->Transcript中找到的。Verilog里的$display,$time等系统函数是在testbench中使用在transcript中查看结果的下面是我们的Tcl仿真步骤:启动ModelSim SE, 首先看到在在ModelSim SE右边的窗口有ModelSim> 这样的提示符。在提示符后,顺序运行以下命令: vlib work 该命令的作用是在该目录下建立一个work目录,请注意不要用操作系统 阅读全文
posted @ 2012-12-12 20:04 天马行空W 阅读(884) 评论(0) 推荐(0)
摘要:原文出处http://www.cnblogs.com/carl_yy/archive/2010/09/10/1823522.html计算器 module calculator( num, num_decp, num_dec, num_sig, cal, enter, result_int, ... 阅读全文
posted @ 2012-12-10 18:01 天马行空W 阅读(3851) 评论(0) 推荐(0)
摘要:文章出处:http://www.cnblogs.com/scnutiger/archive/2009/09/30/1576795.html#2389166linux启动流程[摘至鸟哥的linux私房菜] 今天看了linux启动相关的内容,把主要的部分记录如下。linux的基础启动流程1. 加载BIOS的硬件信息,并获取第一个启动设备的代号。2. 读取第一个启动设备的MBR的引导加载程序(即lilo、grub、spfdisk等)的启动信息。3. 加载操作系统的核心信息,核心开始解压,并尝试驱动所有的硬件设备。4. 核心执行init程序并获得运行信息。5. init执行/etc/rc.d/rc.s 阅读全文
posted @ 2012-12-10 17:55 天马行空W 阅读(307) 评论(0) 推荐(0)
摘要:文章来源:http://www.cnblogs.com/scnutiger/archive/2010/02/06/1664980.html在Quartus7.2之后的版本中,除了原有的基于avalon-mm总线的DMA之外,还增加了Scatter-Gather DMA这种基于avalon-ST流总线的DMA IP核,它更适合与大量数据流传输的场合,使用起来比较灵活,增加了与外设流器件配合的能力。由于网上关于SG-DMA介绍的资料比较少,因此这里简单介绍一下SG-DMA的使用,利用它可以搭配Altera的千兆网MAC核来实现千兆网方面的应用。SG-DMA的数据手册已经介绍得非常详细,具体的相关寄 阅读全文
posted @ 2012-12-10 17:52 天马行空W 阅读(2975) 评论(0) 推荐(0)
摘要:在QII11.1版本中已经没有像QII10.0之前版本的pins assignment 的选项了,取而代之的是Assignment editor和pin planner这两个工具,使用方法也比较简单(chapter 5 --->Creating Pin Assignments With the Pin Planner)。在此就不再详述.在QII中对MegaManger 生成的Megafunction IP模块进行例化,并分配引脚按照QII11.1的handbook(Volume 2 ,section2 ,Chapter 5: I/O Management)中介绍的:For more in 阅读全文
posted @ 2012-12-10 17:29 天马行空W 阅读(797) 评论(0) 推荐(0)
摘要:参考文章:http://www.cnblogs.com/wg2011/archive/2012/02/27/2369677.html使用Quartus II 的版本及PC机操作系统版本为11.1 sp2 WIN7 32位前言 本文档根据 ALTERA 的 FIFO user guide 《SCFIFO and DCFIFO Megafunctions》 (August 2012 Altera Corporation)一文整理而来。 本文档仅供学习、讨论使用,请勿用于商业用途。在使用该文档过程中有任何疑问请至笔者博客进行交流探讨。笔者将随时可能对本教程中的内容进行更改,恕不事先通知。--... 阅读全文
posted @ 2012-12-07 12:14 天马行空W 阅读(12095) 评论(0) 推荐(2)
摘要:参考文章:http://blog.pfan.cn/yanyoushuai/34540.html FIFO即First in first out,也叫先入先出电路,可以实现数据先进先出的存储器件。 FIFO一般普遍用作数据缓冲器,也可以用于顺序数据的缓冲,比如音频信号或视频信号。另一个广泛的应用是在处理器之间的通讯中。FIFO的基本单元是寄存器。作为存储器件,FIFO的存储能力是由其内部定义的存储寄存器的数量决定。FIFO存储器一般以数据量的(深度,即寄存单元的个数)deepth*width(宽度,即一寄存单元的bits)的形式来说明所采用的基本结构。 第一代FIFO存储器是基于“导向”理... 阅读全文
posted @ 2012-12-05 11:33 天马行空W 阅读(6668) 评论(0) 推荐(1)
摘要:Quartus II 11.0 套件较以往QII软件有了很大的change,在仿真器上主要体现为原有的Quartus II simulator没有了,可能是因为为减小软件体积,增强别的功能的原因,了解QII 11.0 与以往版本的区别和改进对于提高学习速度,减少不必要的疑惑是十分有用处的!一、关于Quartus II的安装关于Quartus II 10.0 以前版本,安装都大同小异,Bingo曾经写过“Quartus II 9.1的安装指南.pdf”,下载地址为http://www.chinaaet.com/lib/detail.aspx?id=86239,Quartus II 11.0的.. 阅读全文
posted @ 2012-12-04 11:59 天马行空W 阅读(4776) 评论(0) 推荐(0)
摘要:文章来源 :http://www.cnblogs.com/Efronc/archive/2010/06/25/1765446.html前言:为了搞清Modelsim加载altera仿真库的问题我已经足足查了两天资料,这篇文章是我第一天写的,当时有些地方只是会做,可是为什么这样做就不是很了解了。经过昨天一天的努力,现在基本上明白了整个过程。对这篇文章进行整体的完善和补充(本人水平有限,如有错误请留言指正)。用Modelsim对Quartus II工程进行时序仿真(在此只讨论时序仿真)可分两种方式:一种是在Quartus II中设置run gate-level simulation automat 阅读全文
posted @ 2012-12-03 13:14 天马行空W 阅读(853) 评论(0) 推荐(0)