IC专业词汇——英语篇

IC专业词汇,Mark

★architecture(结构):可编程集成电路系列的通用逻辑结构。

★ARM技术: 英国ARM公司开发的CPU技术,主要特点是逻辑运算简单(相比Intel的X86技术),所以功耗低,适合作为手机,便携设备比如平板电脑的CPU. ARM公司只是负责开发指令集和设计一些公版的构架,自己并不生产芯片.芯片生产商根据自己需要向ARM公司购买版权,自行修改生产芯片. ARM目前最新的指令集是编号为Cortex的ARMv7系列.目前ARM公司基于Cortex指令集设计的结构是A8和A9.通常连上它们的指令集命名为Cortex-A8/Cortex-A9.

★ASIC(Application Specific Integrated Circuit-专用集成电路):适合于某一单一用途的集成电路产品。

★ATE(Automatic Test EQUIPment-自动测试设备):能够自动测试组装电路板和用于莱迪思 ISP 器件编程的设备。

★BGA(Ball Grid Array-球栅阵列):以球型引脚焊接工艺为特征的一类集成电路封装。可以提高可加工性,减小尺寸和厚度,改善了噪声特性,提高了功耗管理特性。

★Boolean Equation(逻辑方程):基于逻辑代数的文本设计输入方法。

★Boundary Scan Test(边界扫描测试):板级测试的趋势。为实现先进的技术所需要的多管脚器件提供了较低的测试和制造成本。

★Cell-Based PLD(基于单元的可编程逻辑器件):混合型可编程逻辑器件结构,将标准的复杂的可编程逻辑器件(CPLD)和特殊功能的模块组合到一块芯片上。

★CMOS(Complementary Metal Oxide Semiconductor-互补金属氧化物半导体):先进的集成电路★加工工艺技术,具有高集成、低成本、低能耗和高性能等特征。CMOS 是现在高密度可编程逻辑器件(PLD)的理想工艺技术。

★CPLD(Complex Programmable Logic Device-复杂可编程逻辑器件):高密度的可编程逻辑器件,包含通过一个中央全局布线区连接的宏单元。这种结构提供高速度和可预测的性能。是实现高速逻辑的理想结构。理想的可编程技术是 E2CMOS?。

★Density (密度):表示集成在一个芯片上的逻辑数量,单位是门(gate)。密度越高,门越多,也意味着越复杂。

★Design Simulation(设计仿真):明确一个设计是否与要求的功能和时序相一致的过程。

★E2CMOS?(Electrically Erasable CMOS-电子可擦除互补金属氧化物半导体):莱迪思专用工艺。基于其具有继承性、可重复编程和可测试性等特点,因此是一种可编程逻辑器件(PLD)的理想工艺技术。

★EBR(Embedded BLOCk RAM-嵌入模块RAM):在 ORCA 现场可编程门阵列(FPGA)中的 RAM 单元,可配置成 RAM、只读存储器(ROM)、先入先出(FIFO)、内容地址存储器(CAM)等。

★EDA(Electronic Design Automation-电子设计自动化):即通常所谓的电子线路辅助设计软件。

★EPIC (Editor for Programmable Integrated Circuit-可编程集成电路编辑器):一种包含在

★ORCA Foundry 中的低级别的图型编辑器,可用于 ORCA 设计中比特级的编辑。

★Explore Tool(探索工具):莱迪思的新创造,包括 ispDS+HDL 综合优化逻辑适配器。探索工具为用户提供了一个简单的图形化界面进行编译器的综合控制。设计者只需要简单地点击鼠标,就可以管理编译器的设置,执行一个设计中的类似于多批处理的编译。

★Fmax:信号的最高频率。芯片在每秒内产生逻辑功能的最多次数。 ★FAE(Field Application Engineer-现场应用工程师):在现场为客户提供技术支持的工程师。

★Fabless:能够设计,销售,通过与硅片制造商联合以转包的方式实现硅片加工的一类半导体公司。

★Fitter(适配器):在将一个设计放置到目标可编程器件之前,用来优化和分割一个逻辑设计的软件。

★Foundry:硅片生产线,也称为 fab。 FPGA(Field Programmable Gate Array-现场可编程门阵列):高密度 PLD 包括通过分布式可编程阵列开关连接的小逻辑单元。这种结构在性能和功能容量上会产生统计变化结果,但是可提供高寄存器数。可编程性是通过典型的易失的 SRAM 或反熔丝工艺一次可编程提供的。

★”Foundry” :一种用于ORCA 现场可编程门阵列(FPGA)和现场可编程单芯片系统(FPSC)的软件系统。

★FPGA(Field Programmable Gate Array-现场可编程门阵列):含有小逻辑单元的高密度 PLD,这些逻辑单元通过一个分布式的阵列可编程开关而连接。这种体系结构随着性能和功能容量不同而产生统计上的不同结果,但是提供的寄存器数量多。其可编程性很典型地通过易失 SRAM 或者一次性可编程的反熔丝来体现。

★FPSC(Field Programmable System-on-a-Chip-现场可编程单芯片系统):新一代可编程器件用于连接 FPGA 门和嵌入的 ASIC 宏单元,从而形成一芯片上系统的解决方案。

★GAL? (Generic Array Logic-通用阵列逻辑):由莱迪思半导体公司发明的低密度器件系统。

★Gate(门):最基本的逻辑元素,门数越多意味着密度越高。

★Gate Array(门阵列):通过逻辑单元阵列连接的集成电路。由生产厂家定制,一般会导致非再生工程(NRE)消耗和一些设计冗余。

★GLB(Generic Logic BLOCk-通用逻辑块):莱迪思半导体的高密度 ispPSI?器件的标准逻辑块。每一个 GLB 可实现包含输入、输出的大部分逻辑功能。

★GRP(Global Routing Pool-全局布线池):专有的连接结构。能够使 GLBs 的输出或 I/O 单元输入与 GLBs 的输入连接。莱迪思的 GRP 提供快速,可预测速度的完全连接。

★High Density PLD(高密度可编程逻辑器件):超过 1000 门的 PLD。

★I/O Cell(Input/Output Cell-输入/输出单元):从器件引脚接收输入信号或提供输出信号的逻辑单元。

★ISPTM(In-System Programmability-在系统可编程):由莱迪思首先推出,莱迪思 ISP 产品可以在系统电路板上实现编程和重复编程。ISP 产品给可编程逻辑器件带来了革命性的变化。它极大地缩短了产品投放市场的时间和产品的成本。还提供能够对在现场安装的系统进行更新的能力。

★ispATETM:完整的软件包使自动测试设备能够实现:

1)利用莱迪思 ISP 器件进行电路板测试和
2)编程 ISP 器件。

★ispVM EMBEDDEDTM:莱迪思半导体专用软件由 C 源代码算法组成,用这些算法来执行控制编程莱迪思 ISP 器件的所有功能。代码可以被集成到用户系统中,允许经由板上的微处理器或者微控制器直接编程 ISP 器件。

★ispDaisy Chain Download SOFtware (isp菊花链下载软件):莱迪思半导体专用器件下载包,提供同时对多个在电路板上的器件编程的功能。

★ispDSTM:莱迪思半导体专用基于 Windows 的软件开发系统。设计者可以通过简单的逻

辑公式或莱迪思 – HDL 开发电路,然后通过集成的功能仿真器检验电路的功能。整个工具 包提供一套从设计到实现的方便的、低成本和简单易用的工具。

★ispDS+TM:莱迪思半导体兼容第三方HDL综合的优化逻辑适配器,支持PC和工作站平台。IspDS+ 集成了第三方 CAE 软件的设计入口和使用莱迪思适配器进行验证,由此提供了一个功能强大、完整的开发解决方案。第三方 CAE 软件环境包括:Cadence, Date I/O-Synario,Exemplar Logic,ISDATA, Logical Devices,Mentor Graphics,OrCAD, Synopsys,Synplicity 和 Viewlogic。

★isPGAL?:具有在系统可编程特性的 GAL 器件

★ispGDSTM:莱迪思半导体专用的 ISP 开关矩阵被用于信号布线和 DIP 开关替换。

★ispGDXTM:ISP 类数字交叉点系列的信号接口和布线器件。

★ispHDLTM:莱迪思开发系统,包括功能强大的 VHDL 和 Verilog HDL 语言和柔性的在系统可编程。完整的系统包括:集成了 Synario, Synplicity 和 Viewlogic 的综合工具,提供莱迪思 ispDS+ HDL 综合优化逻辑适配器。

★ispLSI?:莱迪思性能领先的 CPLD 产品系列的名称。世界上最快的高密度产品,提供非易失的,在系统可编程能力和非并行系统性能。

★ispPAC?:莱迪思唯一的可编程模拟电路系列的名称。世界上第一个真正的可编程模拟产品,提供无与伦比的所见即所得(WYSIYG)逻辑设计结果。

★ispSTREAMTM:JEDEC 文件转化为位封装格式,节省原文件1/8 的存储空间。

★ispTATM:莱迪思静态时序分析器,是 ispDS+ HDL 综合优化逻辑适配器的组成部分。包括所有的功能。使用方便,节省了大量时序分析的代价。设计者可以通过时序分析器方便地获得任何莱迪思 ISP 器件的引脚到引脚的时序细节。通过一个展开清单格式方便地查看结果。

★ispVHDLTM:莱迪思开发系统。包括功能强大的 VHDL 语言和灵活的在系统可编程。完整的系统工具包括 Synopsys,Synplicity 和 Viewlogic,加上 ispDS+ HDL 综合优化逻辑适配器。

★ispVM System:莱迪思半导体第二代器件下载工具。是基于能够提供多供应商的可编程支持的便携式虚拟机概念设计的。提高了性能,增强了功能。

★JEDEC file(JEDEC 文件):用于对 ispLSI 器件编程的工业标准模式信息。

★JTAG(Joint Test Action Group-联合测试行动组):一系列在主板加工过程中的对主板和芯片级进行功能验证的标准。

★Logic(逻辑):集成电路的三个基本组成部分之一:微处理器内存和逻辑。逻辑是用来进行数据操作和控制功能的。

★Low Density PLD(低密度可编程逻辑器件):小于1000 门的 PLD,也称作 SPLD。

★LUT (Look-Up Table-查找表):一种在 PFU 中的器件结构元素,用于组合逻辑和存储。基本上是静态存储器(SRAM)单元。

★Macrocell(宏单元):逻辑单元组,包括基本的产品逻辑和附加的功能:如存储单元、通路控制、极性和反馈路径。

★MPI(MicroprocesSOr Interface-微处理器接口):ORCA 4 系列 FPGA 的器件结构特征,使 FPGA 作为随动或外围器件与 PowerQUIC mP 接口。

★OLMC(Output Logic Macrocell-输出逻辑宏单元):D 触发器,在输入端具有一个异或门,每一个 GLB 输出可以任意配置成组合或寄存器输出。

★ORCA(Optimized Reconfigurable Cell Array-经过优化的可被重新配置的单元阵列):一种莱迪思的 FPGA 器件。

★ORP(Output Routing Pool-输出布线池):ORP 完成从 GLB 输出到 I/O 单元的信号布线。I/O 单元将信号配置成输出或双向引脚。这种结构在分配、锁定 I/O 引脚和信号出入 器件的布线时提供了很大的灵活性。

★PAC(Programmable Analog Circuit-可编程模拟器件):模拟集成电路可以被用户编程实现各种形式的传递函数。

★PFU(Programmable Function Unit-可编程功能单元):在 ORCA 器件的PLC中的单元,可用来实现组合逻辑、存储、及寄存器功能。

★PIC (Programmable I/O Cell-可编程 I/O 单元):在 ORCA FPGA 器件上的一组四个 PIO。PIC 还包含充足的布线路由选择资源。

★Pin(引脚):集成电路上的金属连接点用来:

1)从集成电路板上接收和发送电信号;
2)将集成电路连接到电路板上。

★PIO(Programmable I/O Cell-可编程I/O单元):在 ORCA FPGA 器件内部的结构元素,用于控制实际的输入及输出功能。

★PLC(Programmable Logic Cell-可编程逻辑单元):这些单元是 ORCA FPGA 器件中的心脏部分,他们被均匀地分配在 ORCA FPGA 器件中,包括逻辑、布线、和补充逻辑互连单元(SLIC)。

★PLD(Programmable Logic Device-可编程逻辑器件):数字集成电路,能够被用户编程执行各种功能的逻辑操作。包括:SPLDs, CPLDs 和 FPGAS。

★Process Techonology(工艺技术):用来将空白的硅晶片转换成包含成百上千个芯片的硅片加工工艺。通常按技术(如:E2CMOS)和线宽 (如:0.35 微米)分类。

★Programmer(编程器):通过插座实现传统 PLD 编程的独立电子设备。莱迪思 ISP 器件不需要编程器。

★Schematic Capture(原理图输入器):设计输入的图形化方法。

★SCUBA(SOFtware Compiler for User Programmable Arrays-用户可编程阵列综合编译器):包含于 ORCA Foundry 内部的一种软件工具,用于生成 ORCA 特有的可用参数表示的诸如存储的宏单元。

★SLIC (Supplemental Logic Interconnect Cell-补充逻辑相互连接单元):包含于每一个 PLC 中,它们有类似 PLD 结构的三态、存储解码、及宽逻辑功能。

★SPLD(SPLD-简单可编程逻辑器件):小于 1000 门的 PLD,也称作低密度 PLD。

★SWL(SOFt-Wired Lookup Table-软连接查找表):在 ORCA PFU 的查找表之间的快速、可编程连接,适用于很宽的组合功能。

★Tpd:传输延时符号,一个变化了的输入信号引起一个输出信号变化所需的时间。

★TQFP(Thin Quad Flat PACk-薄四方扁平封装):一种集成电路的封装类型,能够极大地减少芯片在电路板上的占用的空间。TQFP 是小空间应用的理想选择,如:PCMCIA 卡。

★UltraMOS?:莱迪思半导体专用加工工艺技术。

★Verilog HDL:一个专用的、高级的、基于文本的设计输入语言。

★VHDL:VHSIC 硬件描述语言,高级的基于文本的设计输入语言。
继续阅读IC专业词汇——英语篇

\r与\n的区别

\r : return 到当前行的最左边。

\n: newline 向下移动一行,并不移动左右。

Linux中\n表示回车+换行;

Windows中\r\n表示回车+换行。

Mac中\r表示回车+换行。

历史:

回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别。
在计算机还没有出现之 前,有一种叫做电传打字机(Teletype Model 33,Linux/Unix下的tty概念也来自于此)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正 好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车(return)”,告诉打字机把打印头定位在左边界;另一个叫做“换行(newline)”,告诉打字机把纸向下移一行。这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。

JS中的贪婪与懒惰

JS中的贪婪与懒惰
JS中正则表达式的匹配
贪婪:最长匹配
懒惰:最短匹配

懒惰只需要在贪婪的基础上加?号即可

比如说字符串 aabacbadbabe
什么都不加,默认贪婪模式
a.*b 匹配的结果是 aabacbadbab,最长范围的匹配
非贪婪模式,加?号
a.*?b匹配的结果aab,acb,adb,ab,最短的匹配

JS 正则去除’//’和’/* */’注释

我们时常会祛除注释的一些字符,例如”//——-“或”/*——–*/”,以下记录常用的正则,JS端使用:

这个正则表达式,拥有4个子表达式:前两个是用来捕获” “和’ ‘字符串,后两个分别用来选取\\和/* */注释。

最需要注意的是第4个子表达式:

(\/{2,}.*?(\r|\n))|(\/\*(\n|.)*?\*\/)

后面那个?号很关键,这个必须要用懒惰匹配,不然会有干扰哦。

==================================================

注意 当使它用作 字符串 的正则时应该,注意使用逃脱字符 \

所以需要下面这样写

var reg = “(/\\\*([^*]|[\\\r\\\n]|(\\\*+([^*/]|[\\\r\\\n])))*\\\*+/)|(//.*)”;

var exp = new RegExp(reg,“g”);

用 \\\ 表示 \

 

程序员在囧途–越级汇报篇

不知道大家有没有发现过这样的问题。我们总觉得顶头上司很蠢,而顶头上司的上司相反看起来很睿智,所以我们有情况经常喜欢来个“越级“发邮件或者在电梯口碰到上上司,我们的苦衷如滔滔江水般的喷涌而出。

所以,今天给大家看个真实案例进行小说化改编的故事,谈一谈“越级汇报“这件事。 继续阅读程序员在囧途–越级汇报篇

程序员在囧途–“客户真的是魔鬼”吗?

原文来自于我以前一个甲方朋友的访谈(什么是甲方?请自行脑补),文写了好久了,一直没放出来,此次放出来给大家瞅瞅。

很多程序员除了对自己上级领导“憎恨有加”外,还经常会把用户当成自己的天敌而不是上帝。我们这些用户在程序员眼里可以用不讲理、需求朝三暮四、固执己见、 抠门甚至是变态来形容,于是好端端的“上帝”就是这样逐渐被妖魔化的。不过今天我却想以一个真正用户的角度来谈谈软件建设,顺便帮非全部的“变态”用户群 体平反,其实“家家有本难念的经”。 继续阅读程序员在囧途–“客户真的是魔鬼”吗?

程序员在囧途–垃圾创业团队

以前”空虚和寂寞”时写的一篇通过真实案例进行”小说化改编“文,原型中的”我“不是作者本人。特此拿出和大家分享,也与自己共勉。

 正文:

这年头互联网创业有两个人就算一个团队了,如果是精英组成的团队往往两个人能抵得上十个人,但如果是一帮平庸之辈呢?那么你会发现你的团队简直是一个澡堂大杂烩。 继续阅读程序员在囧途–垃圾创业团队

程序员在囧途–软件投标实战

注意:以下内容来自于民间程序员的个人访谈经历进行小说化改编。非作者本人事迹。

正文开始:

(一)

我是一个标准的软件公司技术人员,有很多搞开发的朋友对软件的架构、开发、实施都很在行,而且技术研究的也很深入。

这里首先我表示肯定,不过其实很多搞软件的朋友仅仅接触到的是软件合同签订完毕后接下来的过程,软件从意向确定、谈判、方案设计到最终达成协议其实有很多种方式。当今很多大中型企业软件(除了直接购买成品)如果要上信息化软件都是要通过一个方式,那就是招标(政府更加如此,通过一个电话派个销售去谈谈就签合同那是老早老早的事情了)。我个人认为做技术不应该只看到技术,而应该更多的着眼于技术外围的东西,否则你将只是一个“纯编码人员”,而非完整的技术人员。 继续阅读程序员在囧途–软件投标实战