- 博客(54)
- 资源 (27)
- 收藏
- 关注
原创 DDR技术基础
核弹炸楼:作为一个不打游戏的三好青年,本人对于显卡本身是不感兴趣的,反正穷,也买不起;但是作为一名有追求的工程师,看到GTX1080的技术参数中含有GDDR5x的时候,我本能的搜了一搜。相信很多人对于内存以及显存的技术都是一知半解,关于SRAM,SDRAM和DDR,LPDDR以及GDDR等。今天我们就来简单讲讲这些东西。要讲LPDDR以及GDDR,都得先讲DRAM,
2016-05-27 14:13:27
6175
转载 不归零法编码、曼彻斯特编码和差分曼彻斯特编码
数字信号和数位化编码的数据之间存在着自然的联系。数位化存储的数据表现为0和1的序列。由于数字信号能够在两个恒量之间交替变换,所以可以简单地把0赋予其中的一个恒量,而把1赋予另一个恒量。这里恒量的具体取值并不重要。如果是电子信号的话,这两个恒量数值相同,但符号相反。为了保持论述的普遍性,我们把它们分别称为“高电平”和“低电平”。1. 不归零法编码 不归零法(Nonreturn to Z
2014-09-20 20:30:19
9654
原创 CDC问题的解决方案总结
CDC(不同时钟之间传数据)问题是ASIC/FPGA设计中最头疼的问题。CDC本身又分为同步时钟域和异步时钟域。这里要注意,同步时钟域是指时钟频率和相位具有一定关系的时钟域,并非一定只有频率和相位相同的时钟才是同步时钟域。异步时钟域的两个时钟则没有任何关系。这里假设数据由clk1传向clk2。 单bit传输时,同步时钟域因为频率和相位关系都是已知的,可以推导的,所以不需要采用额外的硬件电路
2014-08-17 19:10:52
8741
转载 Shell脚本test命令使用总结和实例
Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。数值测试参数说明-eq等于则为真-ne不等于则为真-gt大于则为真-ge大于等于则为真-lt小于则为真-le小于等于则为真例如:复制代码 代码如下:
2014-08-11 22:54:43
934
转载 shell中$0,$?,$!等的特殊用法
变量说明:$$Shell本身的PID(ProcessID)$!Shell最后运行的后台Process的PID$?最后运行的命令的结束代码(返回值)$-使用Set命令设定的Flag一览$*所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。$@所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$
2014-08-11 22:46:26
797
转载 众筹的优点和缺点
优点 首先,创业门槛较低。现在许多的众筹网站主打的一个卖点都是“实现你的梦想”。这句话的潜台词是“之前创业门槛高,众筹帮你降低这个障碍”。从实际的案例来看,众筹平台确实帮助许多草根创业者融到资金,并推出了既定的产品。这个过程如果走传统的融资路线会比较艰难,因为VC可能不看好你的这个Idea,况且你没有产品做出来也很难得到VC的认可。 其次,众筹获得的除了资金,还有一份市场调查报告。
2014-03-22 16:24:29
3502
转载 负债经营的利弊
负债经营就是债务人或企业通过银行信用或商业信用的形式,利用债权人或他人资金,从而达到企业规模扩张,增加企业经营能力和竞争力。因此,负债经营理所当然地成为市场经济条件下每个企业的必然选择。然而,债务是要偿还的,企业负债经营又必须以特定的偿付责任和一定偿债能力为保证,并讲求负债规模、负债结构及负债效益,否则,企业可能由此陷入不良的债务危机当中。因此,对企业负债经营,有必要对其利弊进行分析,以便采取措施
2014-03-22 10:29:52
2611
转载 注册公司的好处
创业初期是以个体户形式还是注册公司的形式开始呢?这里整理了几条注册公司的好处:一.法定性。全体股东或发起人成立公司时,需要取得经营业务主管部门相关批文,并且必须在公司设立登记时提交公司登机机关进行登记。在这过程中要涉及到主要两个法规:公司法和其他业务部门法规, 具有强的法律和游戏规则效应。简例1: 个体户做生意亏了本,你自己得对全部债务负责。有限公司做生意亏了本,可向法院申请破产保护,如你
2014-03-22 10:00:07
2128
转载 基于FPGA的跨时钟域信号处理——专用握手信号
在逻辑设计领域,只涉及单个时钟域的设计并不多。尤其对于一些复杂的应用,FPGA往往需要和多个时钟域的信号进行通信。异步时钟域所涉及的两个时钟之间可能存在相位差,也可能没有任何频率关系,即通常所说的不同频不同相。 图1是一个跨时钟域的异步通信实例,发送域和接收域的时钟分别是clk_a和clk_b。这两个时钟频率不同,并且存在一定的相位差。对于接收时钟域而言,来自发送时钟域的信号da
2014-03-17 21:57:56
2610
转载 FPGA跨时钟域的处理方法
在一个fpga系统设计中,经常需要处理多个时钟来源,比如FPGA作为一个转发桥连接几个不同的IC。不同的时钟域有不同的时钟频率和时钟相位。如何处理好多个时钟信号在FPGA内部的关系,让数据以及相关的控制信号在不同的时钟域之间准确的传递就是一个比较困难的问题。在这种情况下,建立与保持时间就显得尤为重要。理论上完美的信号应该是矩形的,上升和下降时间为0,在低速率系统中,上升下降时间确实可以忽略不计,但
2014-03-17 21:42:17
5390
2
转载 二级D触发器应用于同步器,减少亚稳态
关于同步器为什么需要二级D触发器的疑问 上周,在做VGA接口显示实验时,框图中的同步器引起了我的注意。从理论上说,一级同步器已经能够实现同步,为什么还要使用两级同步器呢?首先,我想说理论与实际是有差距的,理论上在数字电路上的触发器都是稳态的,要么为0,要么为1,因此理论上说一级同步就够了,可实际上,除了高电平和低电平,同步器在建立时间或保持时间得不到满足的情况下,会进入亚稳态。亚稳态通
2014-03-17 20:46:03
6908
1
转载 常见系统总线简介
在微机系统中,曾经应用过和正在应用的总线标准有XT总线、ISA总线、EISA总线、PCI总线以及PCI-E总线等。下面简单介绍一下使用广泛的 三种典型系统总线:ISA总线、PCI总线和PCI-E总线。 1.ISA总线 ISA(Industry Standard Architecture)是工业标准体系结构总线的简称,最早由美国IBM公司推出,主要用于IBM-PC/XT、
2014-01-09 09:02:54
4319
转载 模拟信号的隔离
模拟信号的隔离是非常头疼的,有时候不得不需要隔离。大部分基于以下需要:1.隔离干扰源;2.分隔高电压。隔离数字信号的办法很多,隔离模拟信号的办法却没有想象的那么多,关键是隔离的成本,比想象的都要高出许多。特别是要求精确测量的场合,模拟信号的隔离,成本高得更加是离谱的无法想象。我从事这种系统开发多年,对自己所知道的隔离方法做个小小的总结:数字隔
2014-01-09 08:46:08
1384
转载 TTL与CMOS 高低电平 电路区别比较
一.TTLTTL集成电路的主要型式为晶体管-晶体管逻辑门(transistor-transistor logic gate),TTL大部分都采用5V电源。1.输出高电平Uoh和输出低电平UolUoh≥2.4V,Uol≤0.4V2.输入高电平和输入低电平Uih≥2.0V,Uil≤0.8V二.CMOSCMOS电路是电压控制器件,输入电阻极大,对于干扰信号十分敏感,因此不用的
2014-01-01 21:31:38
3575
转载 全面解析RS232 RS422 RS485的本质区别
一、串口简介 RS-232、RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。RS-422由RS-232发展而来,它是为弥补RS-232之不足而提出的。为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到1
2014-01-01 21:23:37
1709
原创 工程师的定位问题
虽然签了工作,但是自己的技能老实说感觉还是不高。所以最近一直想着做比赛提高技能,我也撺掇我的牛人好友跟我一起做。但是昨天晚上他帮我分析了一通,让我突然明白,自己又走向了一条错误的道路。做比赛的确能提高技能,但是如果做为一个硕士生,只想着提高技能其实已经是误入歧途,因为这违背了硕士生的价值,也限制了自己的发展。同学告诉我说,他昨天听实验室的开题汇报,发现了一个超牛的博士,令自己汗颜。我想还有能让
2013-11-23 09:31:35
1965
转载 图形与图像的区别
原文:http://nic.yangtzeu.edu.cn/bencandy.php?fid=93&id=673个人看到一句话讲图像和图形的区别,认为很精准:图像是从图到数据;图形是从数据到图。图像学图是基础,图形学图是终点。图像学是为了分析图像,图形学是为了得到图像。一、基本概念图像是由扫描仪、摄像机等输入设备捕捉实际的画面产生的数字图像,是由像素点阵构成的位图。
2013-11-20 12:12:06
3800
转载 组合逻辑电路中的竞争—冒险现象
一、竞争—冒险现象及其成因 门电路两个输入信号同时向相反的逻辑电平跳变的现象称为竞争。我们把由于竞争而在电路输出端可能产生尖峰脉冲的现象叫做竞争-冒险现象。看图3.4.1(a)的例子,当输入信号A从1跳变为0时,如果B从0跳变为1,而且B首先上升,就会出现尖峰脉冲,如图3.4.2 (b)所示。 二、冒险现象的判别 1. 代数法 首先,找出具有竞争能力
2013-11-13 21:38:41
9287
转载 FIFO 同步、异步以及Verilog代码实现
原文:点击打开链接FIFO 很重要,之前参加的各类电子公司的逻辑设计的笔试几乎都会考到。FIFO是英文First In First Out 的缩写,是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序的读出数据, 其数据地址由内部读写指针自动加1完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址
2013-11-09 22:25:32
2440
原创 逻辑工程师必须寻求转型
所谓逻辑工程师,就是既非硬件工程师,也非软件工程师的一种职业。使用硬件编程语言verilog/VHDL开发硬件,做这种开发的人既要懂硬件,也要懂算法,最终将算法用硬件实现。这应该算得上是一个传统行业了,因为IC设计领域前端就是用硬件语言开发的,FPGA也是用它开发的,技术上比较成熟了,资料也多。可是,实际上,很多FPGA技术的大牛,去换工作发现并不理想,连特权同学都很迷茫,原因在于技术大牛们往
2013-11-09 08:14:04
3608
2
原创 跟好友讨论的方向选择问题
今天跟好友专门讨论了自己以后的方向选择问题。我签了武汉的一家做红外成像的公司,做FPGA开发。我自己当然是很喜欢这个行业的,因为跟IC特别接近。而我研究生学的是微电子,所以打心底特别希望能做IC行业。可是IC行业是没有前途的。因为这是一个夕阳产业,全世界都面临着巨大的瓶颈,国内的公司也是大量的死亡,以后还会死掉更多,继续待在这个行业,未来很有可能会失业。做芯片听起来高端,可是国内的基础是在
2013-11-08 22:44:33
1554
3
原创 FPGA异步复位同步释放解析
FPGA开发中,一种最常用的复位技术就是“异步复位同步释放”,这个技术比较难以理解,很多资料对其说得并不透彻,没有讲到本质,但是它又很重要,所以对它必须理解,这里给出我的看法。讲到这个之前,我们要先熟悉recovery time和removal time的概念。如下图:对于异步复位而言,假设是低电平有效,那么很容易碰到的情况就是我在释放该信号的时候,发现它的释放沿居然跟
2013-11-07 22:27:40
8350
8
转载 IC 逆向设计
源地址:http://blog.renren.com/blog/202761609/447515104 逆向设计传统上被称为“自底向上”的设计方法,也称为反向设计。“反向设计”的提法似乎让人很容易与侵犯别人知识产权产生联系,实际上逆向设计与正向设计一样,只是IC设计的一种技术手段,通过逆向设计获取别人先进的设计思想用于自己的芯片设计中,并不能说侵犯知识产权。特别是对于初学IC设计
2013-11-07 19:43:05
3827
原创 FPGA静态时序分析简单解读
任何学FPGA的人都跑不掉的一个问题就是进行静态时序分析。静态时序分析的公式,老实说很晦涩,而且总能看到不同的版本,内容又不那么一致,为了彻底解决这个问题,我研究了一天,终于找到了一种很简单的解读办法,可以看透它的本质,而且不需要再记复杂的公式了。我们的分析从下图开始,下图是常用的静态分析结构图,一开始看不懂公式不要紧,因为我会在后面给以非常简单的解释:这两个公式是一个非常全面的,
2013-11-07 10:05:34
8719
9
原创 KL25进入低功耗模式无法退出后的芯片救活
KL25是一款主打低功耗的芯片。支持9种低功耗模式。而在一些非常低功耗的模式下,调试器是无法工作的。这样,如果不做调试,你自己也不知道写得代码是否正确;如果要调试,就只能把代码下载到片上执行,然后利用LED或者串口来做些指示,使用最原始的调试办法。这个时候问题就出来了:如果片子进入低功耗模式,而唤醒的代码又不能正确执行,那么这块芯片基本上就很难用了。因为J-link根本连接不上芯片,以后也没有办法
2013-11-06 20:14:27
2141
原创 IC设计行业分类辨析
数字IC前端设计,ASIC前端设计和FPGA设计其实很相像,都需要掌握硬件编程语言(verilog/VHDL)和基本的EDA工具,所以他们的岗位需求看起来都很相像。但是从概念上看,IC是个大概念,ASIC设计则是其中一个很小的部分,FPGA设计则是其中一种方法,通常只做硅前验证。不过,如今因为流片的成本很高,所以IC设计行业门槛较高,中国很多公司规模很小,做不了芯片。倒是FPGA设计因为不需要流片,再加上良好的可编程能力,所以基本上从IC设计中独立出来了,使得FPGA工程师的需求超过了IC设计的需求。中
2013-11-06 18:50:00
4212
1
原创 晶体管的两种不同理解
最近发现概念很混淆,尤其是对于晶体管这个概念。晶体管的第一种理解是专指TTL。大家都知道TTL跟CMOS是两种经常拿来对比的东西。TTL的英文是Transistor-Transistor Logic,也叫晶体管。CMOS为互补场效应管。两者工作的原理不一样,MOS管是电压控制型器件,而TTL是电流控制型器件。从这个概念上讲,晶体管只是一种专指器件。晶体管的第二种理解是泛指一
2013-11-03 15:31:49
2034
原创 利用开源程序wecenter搭建的电子开发垂直问答网站
我用的是wecenter的开源代码,这是国内的一个类似discuz一样的小组织,创业团队哦,不过做的东西真的很赞!搭起来的效果跟知乎几乎一模一样。然后就是在sina app engine上申请帐号继续操作,整个过程半天就能结束。很快你就能做出一个像知乎一样的垂直问答网站。本人不懂PHP,也不懂mysql,但是照样很快完成了。
2013-10-03 22:03:01
4011
原创 KL25开发板利用串口蓝牙与PC通信
KL25开发板芯片本身支持三个串口,uart0,uart1,uart2。其中uart0不太一样,在数据手册里面单独一章介绍;而uart1和uart2则是一样的。我所使用的串口蓝牙模块是BC04,支持主从两种模式,通过硬件连接来决定是主模式还是从模式,波特率固定为9600。所以,要想与之通信,主机也必须是9600波特率。这个模块既可以连在PC上,也可以连在开发板上,都可以用。不过它本身是TT
2013-07-06 13:22:02
2985
原创 KL25的AD采集操作
飞思卡尔的KL25单片机AD做的是很不错的,SAR型能做到16位。不过数据手册就写得不怎么样了,简直可以说是坑爹,很难看懂。有的描述让人难以理解,你指望在别的地方对不理解的地方会有其他角度的描述,结果你发现关于同一描述,他们坚定的采用了复制粘贴的办法!擦!而且,我还发现了数据手册的错误。用户手册上给出了一个案列,AD工作在16bit单端模式下ADCK为1MHZ,但是数据手册上注明如果AD工作在
2013-06-30 23:08:22
3039
原创 KL25的TSI按键操作
花了一天时间写TSI按键代码,其实写代码只用了30分钟,但是看数据手册却用了我整整半天。擦!不过一看TSI模块的寄存器只有3个,其实就可以知道这个模块并没有多复杂,复杂的地方在于机制的理解和参数的理解,数据手册有20页,也不算多。该模块通过两个恒流源给按键充电时的时间差来确定按键是否按下,其中一个是参考恒流源。当按键按下的时候,按键的电容增大,用恒流源将其充满电所需的时间就会变长,这样就可
2013-06-25 21:23:09
2305
转载 kinetis的触摸按键TSI
原文来自:http://blog.chinaaet.com/detail/29774.html使用硬件触摸感应接口之前,我们先看看软件通过GPIO实现触摸的方法:如上图,GPIO接个上接电阻(可用内部的或外部的),PCB上画个触摸盘即可。触摸盘等效于一个对地的电容,手指也等效于一个对地的电容,手指按上时相当于2电容并联,不按时只有一个电容。程序先向IO口写0对电容放电,之后
2013-06-25 14:55:57
2617
转载 小结一下KeilC与IAR对函数参数及返回值的处理
转载地址:http://www.dzkfw.com.cn/Article/keilc/566.html 以前从来没关注过这个,汗。在C51中,KeilC与IAR在函数参数的传递及返回值的处理上,有着较大的不同。本文主要小结不同,并稍稍发表Hanny个人对这些方式的优缺点的看法。首先,我们对数据类型进行分类。根据数据类型的长度,我们可以将数据简单分为:bit, u8, u16, u3
2013-06-25 09:29:28
2976
原创 KL25用SPI操作nor flash
KL25的SPI连接一个nor flash。该flash型号为FM25F04,支持SPI的模式0和模式3,要求高位先发送,在上升沿采集数据。通常,SPI有4种模式,取决于CPOL与CPHA如何配置。CPOL决定SPI总线空闲时的时钟恒定为高还是为低。CPHA决定是第一个时钟沿采样还是第二个时钟沿采样。KL25单片机的数据手册有如下叙述:翻译如下:CPOL为0,SPI空闲
2013-06-23 23:16:32
2478
原创 vitual box安装win7虚拟机
在fedora18下面安装了vitual box的虚拟机,才100多M,上面安了win7。单核,给了1G内存,跑的飞快,真的很爽。vitual box的虚拟机很好用,尤其是无缝模式,能够让win7和fedora一起跑,随心所欲的使用两个操作系统。可惜我的USB转串口始终用不了,即便驱动安装成功,win7下也无法使用串口调试。不知道是什么原因,一晚上未解决。用了root去跑虚拟机,结果跑
2013-06-23 20:22:47
1663
原创 OPENHW大赛,跟同学讨论后的备忘笔记
xilinx zynq-7000开发《宽带实时自适应滤波器》,主要包含:GAL-NLMS算法,linux操作系统和QT图形界面。1,ramdisk不用也可以启动操作系统。可以将ramfs作为根文件系统,也可以将SD卡的ext4分区作为根文件系统。具体是哪一个,涉及到编译设备树的时候修改启动参数。不过,必须有一个作为根文件系统。2,以ramfs作为根文件系统的时候,SD卡的ext4分区会
2013-06-21 16:51:34
1466
原创 飞思卡尔研讨会记录
听过的研讨会也不少了,但是不久总会把一些东西忘干净,仿佛什么都没听过一样。真可惜,所以,从今天起,记下每次研讨会了解到的东西。这里只是简记,未必完全正确。1,飞思卡尔有i.MX系列处理器和kenitis系列处理器两种产品。前者多核架构,面向移动,通信应用;后者单核,面向汽车,医疗,工控。2,kenitis系列有L,K,X,E,W,M,V等系列。L系列:低端,主打低功耗;K系列:高端
2013-06-21 16:41:33
1710
原创 为什么我觉得单片机开发比FPGA开发要难
最近跟同学一起做了xilinx的OPENHW比赛,用的是xilinx的zynq-7020开发板。项目是《基于zynq-7000的宽带适时自适应滤波器》。我在其中做了verilog开发GAL(梯度自适应滤波)算法。做完这个,我又开始做freescale的MCU开发大赛,项目是《基于cortex-M0+的地震检波器采集系统》。使用的是freescale的KL25开发板。不过很快就受到了阻碍。SPI
2013-06-18 21:52:32
7055
1
原创 上海天文台实习的一个项目-根据卫星数据绘制南极星空分布图
大三的时候做的一个东西,当时在上海天文台实习了15天,在老师要求下写了下面一大段代码,现在想起来,都不记得这是干的什么了。 人最可悲的,就是很多东西本来学会了,结果没过多久就忘了。 我只记得,当时是美国的一颗卫星,我们登了它的网站,下载了它的观测数据,经过筛选,大概有4万多个点。然后用这些数据导入进来,根据一些计算,求出绝对星等,以及距离,然后绘制南极星空分
2013-06-18 21:23:21
2345
DS18B20温度测量(单总线)C语言源代码
2012-05-26
P89C66X系列单片机I2C总线通信软件包
2012-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人