2012年4月3日

(转)Altera的几个常用的Synthesis attributes

摘要: 各厂商综合工具,对HDL综合时都定义了一些综合属性这些属性可指定a declaration,a module item,a statement, or a port connection 不同的综合方式。语法为:/* synthesis, <any_company_specific_attribute = value_or_optional_value */下面就是Altera的几个常用的Synthesis attributesNopruneA Verilog HDL synthesis attribute that prevents the Quartus II software fr 阅读全文

posted @ 2012-04-03 17:03 tdyizhen1314 阅读(1089) 评论(0) 推荐(0) 编辑

(笔记)学习C语言经典书籍推荐

摘要: 相信很多网友在学习C语言是总是为找到合适的书籍而犯愁,在国内,我相信大家听得最多的就是有关谭浩强的<c语言程序设计>了,对于此书我不做评价,如果你看了此书,好与不好在你看了以下几本后应该会有一个全新的认识。在这里,我根据自己的切身体会向大家推荐几本书,相信这几本书能够帮助大家更深刻的了解C语言的世界:1、C程序设计语言(The C Programming Language) c语言的圣经,当为初学者之首选,并反复阅读之。这本书虽然只有简简单单的两百多页,但却把C语言描述得非常透彻,国外人写的书,大家都明白,讲究的是实在。2、Expert C Programming(C专家编程) 一 阅读全文

posted @ 2012-04-03 17:00 tdyizhen1314 阅读(9951) 评论(2) 推荐(8) 编辑

(转)改良程序的11技巧

摘要: 有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程序你只写一次,但以后会无数次的阅读。当你第二天回头来看你的代码时,你就要开始阅读它了。当你把代码拿给其他人看时,他必须阅读你的代码。因此,在编写时多花一点时间,你会在阅读它时节省大量的时间。 让我们看一些基本的编程技巧:尽量保持方法简短永远永远不要把同一个变量用于多个不同的目的使用自描述的变量名和方法名尽可能的把变量定义在靠近使用它的地方拒绝神秘数字友好的对待你的语言不要逆常规而行警惕过早优化积极重构测试过的程序不要过度沉迷于技巧通过习例学习新知 现在,让我们把每个小点展开来详细讲一下。 1. 尽量保持方法简短 ... 阅读全文

posted @ 2012-04-03 13:50 tdyizhen1314 阅读(362) 评论(0) 推荐(0) 编辑

(笔记)TSL235新型光感器件--强烈推荐使用

摘要: 最近公司需要使用一种新型的光感器件,TSL235,此器件类似于我们平时最经常用的直插好式三极管8050封装,TSL235通过感知外界光强的变化,输出50%占空比的方波,用户可以通过其输出的方波频率来获知外界的光强。优点:精准 反应灵敏 抗干扰性强 稳定性高 操作简单附:TSL235数据手册http://wenku.baidu.com/view/4b7fcbbcc77da26925c5b0b9.html注:从数据手册上可以看到TSL235的供电建议为5V,范围从2.7V-6V,可实际使用中发现当使用3.3V的供电其输出会更稳定,呈现完美的50%占空比,而使用5V供电时其输出波形变化系数相对而言较 阅读全文

posted @ 2012-04-03 12:36 tdyizhen1314 阅读(955) 评论(0) 推荐(0) 编辑

(笔记)关于LM3S片内FLASH编程的一点建议

摘要: 在对片内FLASH编程时,查看芯片数据手册上面说只需配置FMA、FMD、FMC三个寄存器就行了,可是忽略了很重要的一点,这一点在AN01237[ProgrammingtheOn-ChipFlashMemoryinaStellarisMicrocontroller]笔记上面说明了,就是一定要配置FLASH操作的时钟频率USECRL以确保正确的时序。AN01237相关文档及详细说明请看:http://www.cnblogs.com/tdyizhen1314/archive/2012/10/16/2726734.html另外一定要慎重对片内FLASH使用ReadOnly模式,否则很有可能使你的芯片无 阅读全文

posted @ 2012-04-03 12:33 tdyizhen1314 阅读(425) 评论(0) 推荐(1) 编辑

(原创)关于C语言类型扩展的隐患

摘要: 关于C语言类型扩展的问题,经常被大家忽略,因为这是一个很隐秘的问题,请看下文:void func(void){ int i=1; unsignedchar c1= 1; signed char c2 = -1; if(c2> i) dprintf("\r\n -1 > 1"); else dprintf("\r\n -1 <= 1"); if(c2> c1) dprintf("\r\n -1> 1"); else dprintf("\r\n -1<= 1");}实际运行结果会是多 阅读全文

posted @ 2012-04-03 12:10 tdyizhen1314 阅读(603) 评论(1) 推荐(1) 编辑

(转) 如何將10進位轉2進位? (C/C++) (C)

摘要: Abstractprintf()只能顯示10、8、16進位的值,卻無法顯示2進位的值,但有時候我們會希望能直接顯示2進位數字。Introduction使用環境:Visual C++ 8.0 / Visual Studio 2005Method 1:這是從C Primer Plus 5/e改寫的,使用bit運算來將10進位轉2進位,相當漂亮的寫法。decimal2binary.c / C1/*2(C) OOMusou 2008 http://oomusou.cnblogs.com34Filename : decimal2binary.c5Compiler : Visual C++ 8.06Des 阅读全文

posted @ 2012-04-03 11:40 tdyizhen1314 阅读(421) 评论(0) 推荐(0) 编辑

(转)如何使用ModelSim作前仿真與後仿真? (SOC) (Quartus II) (ModelSim)

摘要: Abstract本文介紹使用ModelSim做前仿真,並搭配Quartus II與ModelSim作後仿真。Introduction使用環境:Quartus II 8.1 + ModelSim-Altera 6.3g由於FPGA可重複編程,所以不少開發人員就不寫testbench,直接使用Quartus II的programmer燒進開發板看結果,或者使用Quartus II自帶的Waveform Editor進行仿真,這種方式雖然可行,但僅適用於小project,若project越寫越大,Quartus II光做fitter就很耗時間,一整天下來都在作Quartus II編譯。比較建議的方式 阅读全文

posted @ 2012-04-03 11:36 tdyizhen1314 阅读(327) 评论(0) 推荐(0) 编辑

(转)如何使用ModelSim對Megafunction或LPM作仿真? (SOC) (MegaCore) (ModelSim)

摘要: Abstract在FPGA開發中,常會用到Altera所提供的Megafunction與LPM加速開發,這要如何使用ModelSim作仿真呢?Introduction使用環境:Quartus II 8.1 + ModelSim-Altera 6.3g_p1 + ModelSim SE 6.3e在(筆記) 如何使用ModelSim作前仿真與後仿真? (SOC) (Quartus II) (ModelSim)中,提到如何使用ModelSim對Verilog作仿真,包含前仿真與後仿真,若使用了Altera的Megafunction與LPM,則仿真的方法稍有不同,本文分別使用ModelSim-Alte 阅读全文

posted @ 2012-04-03 11:35 tdyizhen1314 阅读(291) 评论(0) 推荐(0) 编辑

(转)如何使用SignalTap II觀察reg與wire值? (SOC) (Verilog) (Quartus II) (SignalTap II)

摘要: Abstract撰寫Verilog時,雖然每個module都會先用ModelSim或Quartus II自帶的simulator仿真過,但真的將每個module合併時,一些不可預期的『run-time』問題可能才一一浮現,這時得靠SignalTap II來幫忙debug。Introduction使用環境:Quartus II 8.0 + DE2-70 (Cyclone II EP2C70F896C6N)實際使用SignalTap II時,會發現有些reg與wire可以觀察,有些又無法觀察,在(原創) 如何使用SignalTap II觀察reg值? (IC Design) (Quartus II 阅读全文

posted @ 2012-04-03 11:29 tdyizhen1314 阅读(219) 评论(0) 推荐(0) 编辑

导航