王敏志 向他提问 +关注

coyoo

享受FPGA调测的乐趣

个人成就:
出版《FPGA设计实战演练(高级技巧篇)》、《深入理解Altera FPGA应用设计》两书。
工  作:
奇美烁(南京)科技有限公司 电子工程师
在  行:
FPGA/CPLD  PCB技术/设计/定制 
联系方式:
QQ:969737034

精彩问答

  • 问:
    自动并行转串行数据流
    答:
    直接去掉就是咯,为何还要在去掉后再加en?详情>
    0人赞过
  • 问:
    FPGA的乘法器怎么做时钟约束
    答:
    正常约束,如果使用altera的宏函数,可以在Megawizard里设置流水级数,放松时序要求。当然代价是乘法结果输出需要等待更多的时钟周期。这时候可以使用多周期约束,不影响系统整体性能(对数据实时处理要求不大的情况下)详情>
    1人赞过
  • 问:
    allegro怎么样给空网络的过孔,添加网络
    答:
    过孔位置如果能动的话,可以先删除这个过孔,然后复制你需要的网络的过孔过来即可。详情>
    0人赞过
  • 问:
    能问下王工你的FPGA学习路程吗
    答:
    刚看了下,优酷还有一部分视频http://v.youku.com/v_show/id_XNjU1OTI0NjA4.html?spm=a2h3j.8428770.3416059.1详情>
    0人赞过
  • 问:
    FPGA如何入门
    答:
    书是适合有一定基础的同学;如果想入门,网上有很多Step by Step的教程的。只是光看教程有时候难免会丧失刚刚激起兴趣,所以最好的快速入门办法就是实际参与一些简单的项目,哪怕一开始打打下手也可以。也可以从某宝淘些便宜的板子先玩玩(上面有很多大几十的板子)详情>
    0人赞过
  • 问:
    FPGA软失效
    答:
    如果对这个问题比较敏感,倒是可以加校验的。我记得altera有相关的函数或者IP。也可以自己写一个CRC校验。详情>
    1人赞过
  • 问:
    XILINX集成Adc的Fpga的协议分析仪的实现求教
    答:
    根据采样定理,你的意思是不是要选一个集成至少28M的ADC的fpga?我的理解,只要ADC的采样率、分辨率符合你的要求,应该就不会有问题。至于后续数据处理,跟你使用片外ADC是一样的。详情>
    0人赞过
  • 问:
    Arduino与FPGA通信
    答:
    arduino我不是很熟悉,理论上FPGA可以通过各种通信总线与其它芯片、MCU、FPGA等进行通信的。这些总线包括UART、IIC、SPI等等,这些都是低速的总线,网上一搜一大堆的参考设计。详情>
    1人赞过
  • 问:
    电源
    答:
    能明确你的问题吗?你是不是想问:1. 如何设计电源IC芯片?还是想问:2. 如何进行电源芯片外围电路设计?详情>
    0人赞过
  • 问:
    关于module 中的always 疑问
    答:
    使用单个还是多个always,应该没有所谓的优劣之分,always就是一个进程而已。我的理解:当module实现的电路相对比较独立,逻辑代码又相对不那么庞大,那么就使用单个always;当module要实现的电路包含有多个功能模块,也即设计者可以明显划分多个功能区块,各区块能找到比较明显的“边界”,那么就使用多个always来分别实现不同的功能模块。详情>
    3人赞过
  • 问:
    FPGA的复位电路使用上电复位电路,偶尔会重载现象
    答:
    1、首先要确认观察到的现象是不是“重载”,具体方法(以Altera器件为例),使用示波器观测nstatus及(或)nconfig信号;2、高度怀疑这种所谓的“重载”现象有可能其实就是重复复位,造成的原因可能是复位信号不干净;处理办法是可以给复位信号加消抖电路。详情>
    2人赞过
  • 问:
    EP3C25F324C8怎么在板子上来看计数器代码是否实现?
    答:
    请问: 1、屏幕慢慢变白是什么意思? 2、变白的屏幕是什么屏幕?电脑的?还是板子上的? 3、QII显示成功是指程序下载成功吗? 最后,如果想观察设计或者说是要调试自己的设计完全可以使用Altera的SignalTap II这个工具,当然前提是需要JTAG口。 详情>
    1人赞过
  • 问:
    求高人帮我写个程序,感谢 急急急
    答:
    ,其实有问题可以提,但是期望别人完全包揽是很不现实的。详情>
    0人赞过

关于达人


   

      著有《FPGA设计实战演练(高级技巧篇)》、《深入理解Altera FPGA应用设计》,曾就职于多家科研院所,从事过雷达、通信以及医疗电子方面的研发工作。在电子期刊网站,多以coyoo、湘攸客为名发布技术文章或学习博客。
   

      参加工作以来参与过多型舰载雷达的研发工作,主要负责数字电路方面开发,包括电路设计、DSP以及FPGA编程。从使用Xilinx的Virtex系列起步,到参与Altera代理商现场技术支撑工作多年。目前专心投入研发工作,方向是数字医疗开发,参与派特的数字信号处理,以及基于FPGA的TDC实现。

SaveSaveSaveSaveSave

深入理解Altera FPGA应用设计

¥35.80 去看看

FPGA设计实战演练(高级技巧篇)

¥46.10 去看看
  • 新书马上又要出版了欢迎大家捧场啊

    出版社提供了两款封面让我选择,个人有很强烈的选择恐惧症,我抓阄选了第二个黄色的,不知道大家更喜欢哪个版本?! ...

  • OFDR的工作原理

    光纤光栅解调里最新技术似乎是OFDR,对于咱学电子的理解OFDR原理确实有难度。大概意思是将频域中的频谱信息与空间的参量对应起来。OFDR之前是OTDR,与OTDR比较,OFDR似乎还有以下一些好处: OFDR的空间分辨率与接收机的带宽成正比,而OTDR的分辨率与带宽成反比。 由于噪声与接收机带宽成正比,固OFDR的信噪比可以做到非常高。 OFDR的原理,其系统结构框图可以如下图所示,其主要由线性调频光源、迈克尔逊干涉仪以及光电探测等组成,它的工作原理是基于光外差探测原理的。 1、光外差探测原理 如图所示,光源输出的是一束线性调频的激光,经过分光镜分为两束:一束经固定反射镜,再经分光器射向光电探测器,其光程ZL是固定的,设其t时刻到达光电探测器的频率为VL,并称为参考光;另一束注入待测光纤,由于光纤存在瑞利散射,其中有一部分散射光沿着光纤向注入端返回,并经分光镜射向光电探测器,这束光称为信号光,其光程为Zs是由于散射点位置的变化而不同,设距离光注入端Zs/2处的瑞利背向散射光在t时刻到达光电探测器的光频率为Vs。由于这两束光满足相干条件,在光敏面必然发生混频现象。 以上内容学到此处,产生几个疑问: 为何这两束光满足相干条件? 什么...

  • OFDR系统的关键技术

         最近在学习OFDR技术,OFDR系统的关键技术主要包括:线性扫频光源、外差探测光路(光外差)、光接收机以及信号处理单元等。其中信号处理单位包括光电转换后的信号模数转换和数据采集,以及数据采集后的处理,核心是FFT。上述关键技术中前面几个都是光学范畴,最后一项属于咱电子学范畴。 1、OFDR系统对线性扫频光源的要求       OFDR系统需要线性扫频的激光光源,同时线性扫频的激光光源还要满足光外差探测条件(什么是光外差探测条件?)。      光外差探测要求信号光和参考光必须具有相同的模式结构,这意味着所用的激光器应该单频基模运转(太专业不理解)。另外,光外差探测是一种相干探测方法,因此光源要有相当大的相干长度,光源相干长度又与光源的线宽有关(什么是光的相干?什么是光源的线宽?)。当光源的线宽越窄时,其相干长度就越大。而窄线宽光源也有利于进行线性扫频调制(调频有点类似雷达发射机前的中频信号需要调频到射频之后才发射一样,手机信号也类似)。所以,窄线宽也是对OFDR系统光源进行设计时需要重点考虑的一个问题。 2、OFDR系统对光路和光接收机的要求      光路和光接收机部分对于OFDR系统的高分辨率设计也起到很重要的作用。系统是通过测量计算瑞利散射中的背向散射光,达到检测光纤损耗目的的。当光源的功率过高时,将引起受激布里渊散...

  • Quartus II 中文注释乱码解决办法

      有些时候我们用Quartus II 打开不同版本创建的工程文件时,往往会出现下列提示       点Yes后,Quartus II 会自动把文件转换成我们安装的版本。但是却出现了下图中糟糕的情况,我们发现中文注释变成了乱码,影响到了我们阅读代码的心情。        这点,相信很多刚学FPGA的新人们,热衷于下载代码例程学习时,都有遇到到这样的情况。        造成这种乱码的原因是,在Quartus II版本升级时,更换了编码标准Quartus II 11.0 以下的版本使用的是ANSI编码, 而 12.0 到更新的版本14.0,则是使用UTF-8编码。知道了这个原因后,我们就很容易想出解决办法了。办法很简单,如下所示:        用记事本或者notepad++打开对应有乱码的.v文件,另存为UTF-8编码的文件,并保存。   注意如果安装使用的是11.0以下(包括11.0sp1)版本的Quartus II,想将UTF-8编码的转换成ANSI编码,中文仍会乱码。所以建议还是使用较新版本的Quartus II更加省事。 转换后重新打开效果如图:   ...

  • 信号处理学习经验

            学习信号的最好方法是:信号与泛函结合学习。理解了希尔伯特空间的内积,傅立叶变换与级数就非常好理解了。剩下的就是对冲激函数的理解。如果搞定冲击函数的选择性后,你就知道卷积也是一个线性空间的代数运算而已。。最后就剩下周期函数的傅立叶级数与傅立叶变换的转换问题,因为这个不是正常的积分,所以需要一点技巧。           总之,学好信号的关键是理解希尔伯特空间内积,以及线性空间的线性运算。除此之外就是对冲击函数的处理。 工科学生总是怕数学,想从具体例子入手去学习傅立叶变换。这无可厚非,但是如果只是停留在物理层面,会让你疲惫不堪的。...

  • 试用Altera-SoC板子暂时遇到的问题记录

            我尽量描述清楚我的问题,因为我是直接编译从友晶网站下载到的例程,所以工程就不附在这里,工程名称是“SoCKit_DDR3_RTL_Test” 。 具体的问题是编译之后报告了相关DDR3路径的时序问题,如下图所示:   我发现编译报告的TimeQuest区域有个“Timing Closure Recommendation”,如下图所示:   当我选择上图右侧任意一个推荐处理方式调出TimeQuest之后,选择报告路径,出现如下的错误:   我的Quartus II版本是14.1   查看编译信息,找到一条警告信息: Critical Warning: Timing analysis was performed on core fpga_ddr3_p0 using Quartus II v13.0 with a preliminary timing model and constraints. You must regenerate this IP in a future version of Quartus II to update the timing constraints to match the timing model.   会否该时序问题是因为我使用的版本与...

  • 安装多个版本Quartus II带来的问题

    申请了一块SoCkit板子试用,所以需要更新电脑里的Quartus II,由于本身项目中必须使用ArriaGX器件,所以之前的Quartus II12.1也不能卸载,固电脑中存在两个版本,分别是Quartus II12.1与Quartus II14.1. 今天在跑例程的时候,使用随板附带的批处理下载配置文件的时候出现了一个问题,该批处理的内容如下: %QUARTUS_ROOTDIR%\bin\quartus_pgm.exe -m jtag -c 1 -o "p;SoCKit_DDR3_RTL_Test.sof" pause 可是在执行该批处理的时候提示找不到路径,如下图所示:   安装Quartus II14.1之后,Windows系统中的系统变量%QUARTUS_ROOTDIR%已经自动替换成Quartus II14.1的安装路径,而非之前12.1的安装路径了。所以上述批处理中在Quartus II14.1安装路径下找“bin64”目录就找不到了,因为我们知道在12.1安装目录下是有bin和bin64两个目录,而在14.1安装目录下并无bin这个目录,只有bin32和bin64两个目录。所以上述问题的解决办法就是将批处理中的bin修改成bin64即可,修改后直接执行批处理结果如下图所示。   同样需要提醒的是,由...

  • 巧用FPGA中资源

    随着FPGA的广泛应用,所含的资源也越来越丰富,从基本的逻辑单元、DSP资源和RAM块,甚至CPU硬核都能集成在一块芯片中。在做FPGA设计时,如果针对FPGA中资源进行HDL代码编写,对设计的资源利用和时序都有益。下面主要讲解一下如何巧用FPGA中资源: 1. 移位寄存器         FPGA中的移位寄存器使用在前面的博文中有所论述,Xilinx FPGA中的LUT可以作为SRL使用,主要可参考此博文《Xilinx 7系列FPGA使用之CLB探索》,在此想补充论述一下SRL的延时,首先看一下如下代码,实现了一个19级的移位寄存器。 module srl_test(     input clk,     input rst,     input din,     output dout     ); reg din_d; always@(posedge clk) begin         if(rst)                   din_d...

  • 虚拟JTAG(Virtual Jtag)初探

    老早就知道Virtual Jtag,也看了其他人介绍的详细学习过程,记录下自己的学习过程,把VJ user guide上介绍的两个例子down下来,能够跑通,但是还没有完全理解,主要障碍在于对Tcl不熟悉。在完全掌握tcl之前那就先用VJ的简单功能吧。       关于UG上的两个例子网上可以下得到,这里我想把riple贴出来的例子重新贴一下,因为riple是用Verilog,我把它改成了vhdl,不为别的,就是想通过重复劳动尽快熟悉起来。       QII project:。       VJ Debug文件:。 看看执行效果: 第一步(sample),数据采集到9就结束循环                通过使用脑子里还是有一个疑问,感觉使用VJ调试也就相当于串口或者nios里jtag_uart,也就是说通过VJ可以对设计施加控制激励比如模拟拨码,或者探测设计中某一个状态比如led显示。如果速度一快VJ并不能做到实时探测或控制,就像led上变化过快我们无法看到led闪烁一样。       上面这个问题不知道能否通过在FPGA内部开辟缓存比如fifo得以改善,需要实践。   贴出VJ调试中tcl文件中对于real jtag检查的部分(注:注释最好还是用分号“;”+“#”): #...

  • Quartus II新版本安装问题

    由于QII12.1不支持CycloneV,所以下载了最新的QII14.1,。安装的时候遇到了下面的问题: 具体的解决方法,是直接点Ignore忽略就好。 安装完之后,发现还是可以使用的。 ...

  • 12

    粉丝数量

  • 13

    解决问题

  • 48

    帮助过用户

  • 13

    收到称赞

最近赞过他

同样在行的还有他们

Cigoy 嵌入式  PCB技术/设计/定制 

两项发明专利,三项实用新型专利,论文若干

Eagleson FPGA/CPLD 

参与过多型舰载雷达的研发

金沙滩工作室 嵌入式  FPGA/CPLD  热门单片机 

获得多项国家专利
国内知名单片机培训专家
《手把手教你学51单片机-C语言版》作者

汉云 DSP技术  Linux 系统  STM32讨论区  PIC单片机  PCB技术/设计/定制 

电力系统产品

武力戡乱 FPGA/CPLD  STM32讨论区  51单片机  MSP430单片机  AVR单片机  PIC单片机 

proteus仿真单片机,51、avr、lpc、msp430等全系列