tag 标签: style

相关博文
  • 热度 16
    2014-8-20 09:33
    1011 次阅读|
    0 个评论
    https://www.kernel.org/doc/Documentation/CodingStyle https://computing.llnl.gov/linux/slurm/coding_style.pdf 来自Linux之父Linus Torvals
  • 热度 19
    2013-5-26 20:44
    1605 次阅读|
    0 个评论
    fpga的设计流程,一般来说,文档的设计会占一半以上的时间,真正写RTL代码用的大概三分之一的时间,而剩下的时间则却全部用来做仿真测试;当然单纯的来讲,coding style并非固定的,每个公司甚至每一个人都有自己的写法,但就综合工具以及从代码的可读性以及可利用性来讲,良好的coding sytle 对于你的调试会有事半功倍的效果,从研究生到工作3年中,我始终坚持这种风格。接下来讨论一下具体的风格: 1:为了模拟DFF中的延时Tco,在module中会定义一个user delay,即`define UD #1,这仅仅是为了方便仿真而定义的,在RTL综合的时候会被自动优化掉; 2:一个module中只有一个clk信号,即每一个module内部的信号都是同步的;需要做跨时域处理的话在顶层操作,在顶层进行例化异步FIFO或者双口RAM; 3:组合逻辑与时序逻辑分开描述,组合逻辑用阻塞赋值,时序逻辑用非阻塞赋值,这基本上是coding style默认的; 4:为了便于仿真,便于调试,便于移植,便于共享等,强烈建议“一个always块只对一个信号进行赋值,而一个信号也只在一个always块里面进行赋值”;这样做的好处首先是仿真的时候信号出错便于定位而且便于修改,尤其是增加一个信号的时候修改的时候非常方便;其次可以避免你犯低级错误,多驱动源,latch的生成等等; 5:状态机的设计,当然建议用2段式或者3段式,而不建议用一段式,一段式可能看起来简单,但是当一个工程较为复杂的时候,你要在状态机中加入一个控制信号的时候会非常的不方便在不影响其他信号的前提下; 5:信号的命名规则: 这个非常重要,尤其是对于没有文档的设计来说,如果设计中的命名规则让人一看就大概知道这个信号的干什么的,就可以了,比如ADC_CS_B,B代表低电平有效,即ADC芯片的片选信号低电平有效,别人能从你的信号命名中获取一定的信息如下图所示:   6:clk与信号的输入输出 clk在顶层应该进入PLL模块然后在输出,为什么?增加驱动性能;而且要用全局时钟,输入域输出都用寄存器打一拍; 7:文档的重要性 稍微复杂的工程一定要有完备的文档描述,代码中也要有相应的注释;因为你的代码要做到别人能看懂,如果别人看你的代码有一头雾水的感觉,甚至不想看,感觉还不如自己写呢,这个就非常的失败,所以一定要养成这种良好的习惯; 总之,良好的coding style对设计非常重要,我在工作中深有体会,看到公司中那种随心所欲的代码真的头疼!!!!!!!!!!
相关资源
  • 所需E币: 0
    时间: 2023-3-14 00:24
    大小: 16.67KB
    上传者: Argent
    华为coding style
  • 所需E币: 0
    时间: 2021-4-24 18:06
    大小: 684.47KB
    上传者: Argent
    随着FPGA技术的不断发展,许多消费类产品都嵌入了FPGA程序,ZYNQ架构属于主流,搜集的部分有关FPGA学习资料,希望对您有所帮助,欢迎下载。
  • 所需E币: 1
    时间: 2020-4-30 09:54
    大小: 594.47KB
    上传者: TThityou
    GoogleC++StyleGuide谷歌C++风格手册
  • 所需E币: 5
    时间: 2019-12-25 15:27
    大小: 365KB
    上传者: rdg1993
    vhdl代码规范.pdfPRINTEDVERSIONSAREUNCONTROLLEDEXCEPTWHENSTAMPED"CONTROLLEDCOPY"INREDSemiconductorReuseStandardSRS07HDLV2.0VerilogHDLCodingMotorolareservestherighttomakechangeswithoutfurthernoticetoanyproductshereintoimprovereliability,functionordesign.Motoroladoesnotassumeanyliabilityarisingoutoftheapplicationoruseofanyproductorcircuitdescribedherein;neitherdoesitconveyanylicenseunderitspatentrightsnortherightsofothers.Motorolaproductsarenotdesigned,intended,orauthorizedforuseascomponentsinsystemsintendedforsurgic……
  • 所需E币: 5
    时间: 2020-1-4 23:41
    大小: 294.68KB
    上传者: quw431979_163.com
    HDLSynthesizerandOptimizerModelingStyleGuide……
  • 所需E币: 5
    时间: 2020-1-4 23:41
    大小: 411.4KB
    上传者: givh79_163.com
    HDLCodingStyleguide……
  • 所需E币: 3
    时间: 2020-1-4 23:46
    大小: 69.32KB
    上传者: 二不过三
    AHighlyEfficientModelingStyleforHeterogeneousBusArchitectures……
  • 所需E币: 4
    时间: 2019-12-24 20:46
    大小: 761.94KB
    上传者: wsu_w_hotmail.com
    TDA5051A照明主从演示板OM13314的用户手册UM10495TDA5051Alightingmaster-slavedemoboardOM13314Rev.1―16August2011UsermanualDocumentinformationInfoContentKeywordsTDA5051A,LPC1114,PCF8883,zerocrossingandUARTstylesynchronization,lightingdemoAbstractThisdocumentisausermanualfortheTDA5051APowerLineModem(PLM)master-slavelightingcontrollerdemoOM13314.NXPSemiconductorsUM10495TDA5051Alightingmaster-slavedemoboardOM13314RevisionhistoryRevDateDescription……
  • 所需E币: 3
    时间: 2019-12-24 19:48
    大小: 93.5KB
    上传者: 微风DS
    codingstyle海思高校合作——QA培训资料1.RTLCODE规范1.标准的文件头在每一个版块的开头一定要使用统一的文件头,其中包括作者名,模块名,创建日期,概要,更改记录,版权等必要信息。统一使用以下的文件头://**************************************************************//COPYRIGHT(c)2005,HisliconTechnologiesCo,Ltd//Allrightsreserved.////IPLIBINDEX:IPlibindexjustsaUTOPIA_B//IPName:thetopmodule_nameofthisip,usually,issame//asthesmallipclassifiednamejustasUTOPIA//Filename:file_nameofthefilejustas“tx_fifo.v”//Modulename:module_nameofthisfilejustas“TX_FIFO”//Fullname:completeEmglishnmeofthisabbreviated////Author:Athor/ID//Email:Author’semail//Data://Version……
  • 所需E币: 3
    时间: 2020-1-13 09:50
    大小: 677.94KB
    上传者: wsu_w_hotmail.com
    EMCStyleWorks2000Universal...,EMCStyleWorks2000Universalv1……
  • 所需E币: 5
    时间: 2020-1-14 19:01
    大小: 2.61MB
    上传者: 978461154_qq
    RTLDesignStyleGuideforVerilog-V1Chapter3RTLDesignMethodologyChapter3RTLDesignMethodologyThischapterintroducesthemethodologyforcreatingfunctionlibraries,theparameterizationofdesignresources,testfacilitationdesign,lowpowerconsumptiondesign,andmethodsformanagingdesigndata.Thischapteralsointroducesthemethodologyforimprovingdesignqualityandthereusabilityofdesignresources.3.1CreatefunctionlibrariesContents3.2Usingfunctionlibraries3.3DesignforTest(DFT)3.4LowPower-ConsumptionDesign3.5Sourcecodesanddesigndatamanagement3-13.1.Createfunctionlibraries3.1.Createfunctionlibraries3.1.1.Createandutilizefunctionlibraries[1]Chapter3RTLDesignMethodologyCreatesub-programswhichcanbeusedincommonCreatereusablecomponentlibrari……
  • 所需E币: 5
    时间: 2020-1-14 19:14
    大小: 216.74KB
    上传者: quw431979_163.com
    motorolaProfessonalverilog...,ProfessonalVerilogCodingStyle……
  • 所需E币: 4
    时间: 2020-1-14 19:14
    大小: 79.55KB
    上传者: rdg1993
    VerilogCodingStyleforEffic...,VerilogCodingStyleForEfficientDigitalDesign……
  • 所需E币: 5
    时间: 2020-1-14 19:21
    大小: 79.55KB
    上传者: 2iot
    verilog资料上传--VerilogCodingS...,verilog资料上传--VerilogCodingStyleForEfficientDigitalDesign……
  • 所需E币: 5
    时间: 2020-1-14 19:21
    大小: 185.75KB
    上传者: 16245458_qq.com
    CodingStyleforverilog.pdf.z...,CodingStyleforverilog[1]……
  • 所需E币: 5
    时间: 2020-1-14 19:28
    大小: 219.6KB
    上传者: 2iot
    GuidetoHDLCodingStylesfor...,codingstyle……