一、除法、对数、指数有什么快速算法的设计想法?除法:利用Taylor展开公式的近似,采用两次乘法操作和一张较小的查找表。对数:计算精度大时选用椭圆θ函数-算术几何平均法,在计算精度小时选用泰勒级数展开式指数:利用泰勒级数展开式这个级数对全体实数x都收敛,并且在x接近零时收敛得比较快。二、DSP的乘法器是如何实现的?在通用微处理器中,乘法是由软件实现的,它其实是由时钟控制的一连串“移位—加法”操作。而对于DSP乘法器,则应具有以下基本基本功能:要求在一个时钟周期里对两个字长为b位的输入由硬件作快速并行乘法;应能通过格式控制来执行无符号或带符号或混合的乘法操作、小数或整数乘法操作以及扩展精度或双精度运算,并有合适的舍位方法;应有输入和输出寄存器,这样可以锁存数据,配合流水线操作。也可不用寄存器,使乘法器在透明方式下工作,这样可以有最小的等待时间。在数字信号处理的滤波器、FFT、卷积及各种矢量运算中,由于要执行Σb(n)*x(n-k)一类的运算,这类运算的乘法和加法总是同时出现,因此DSP中就希望将乘法器和加法器相结合,在一个时钟周期完成一次乘、加运算,并且累加乘法运算的结果。这样的运算单元称为乘法累加器。对于乘法累加器,除了要求能在一个时钟周期完成一次乘、加运算外,为了在累加时保证运算精度,还应在累加输出寄存器中包括足够的保护位,因其在2b位的乘法输出宽度之外,所以称为扩展位。扩展位中的逻辑应该能用来预测累加器的溢出,并且能紧急通知作重新定标度操作,即防溢出处理。三、DSP选型需要考虑哪些因素?1.DSP芯片的运算速度MAC时间:一次乘法和一次加法的时间。大部分DSP芯片可在一个指令周期内完成一次乘法和一次加法操作。FFT执行时间:运行一个N点FFT程序所需时间。由于FFT运算在数字信号处理中很有代表性,因此FFT运算时间常作为衡量DSP芯片运算能力的一个指标。MIPS:每秒执行百万条指令。MOPS:每秒执行百万次操作。MFLOPS:每秒执行百万次浮点操作。BOPS:每秒执行十亿次操作。2.DSP芯片的价格如果采用价格昂贵的DSP芯片,即使性能再好,其应用范围也受到一定限制,尤其是民用产品。3.DSP芯片的硬件资源不同DSP芯片所提供的硬件资源不同,如片内RAM、ROM的数量,外部可扩展的程序和数据空间,总线接口、I/O接口等。4.DSP芯片的运算精度一般的定点DSP芯片字长为16位,少数24位。浮点芯片的字长一般为32位,累加器为40位。5.DSP芯片的开发工具在DSP系统的开发过程中,如果没有开发工具的支持,要想开发一个复杂的DSP系统几乎是不可能的。功能强大的开发工具,可使开发时间大大缩短。6.DSP芯片的功耗便携式的DSP设备、手持设备、野外应用的DSP设备等对功耗有特殊的要求。7.其他因素除了上述因素外,还要考虑到封装形式、质量标准、供货情况、生命周期等。四、PCB设计需要考虑哪些因素?1、“层(Layer)”的概念与字处理或其它许多软件中为实现图、文、色彩等的嵌套与合成而引入的“层”的概念有所同,Protel的“层”不是虚拟的,而是印刷电路板材料本身实实在在的各铜箔层。现今,由于电子线路的元件密集安装。防干扰和布线等特殊要求,一些较新的电子产品中所用的印刷电路板不仅有上下两面供走线,在板的中间还设有能被特殊加工的夹层铜箔,例如,现在的计算机主板所用的印板材料多在4层以上。这些层因加工相对较难而大多用于设置走线较为简单的电源布线层(如软件中的GroundDever和PowerDever),并常用大面积填充的办法来布线(如软件中的ExternaIP1a11e和Fill)。上下位置的表面层与中间各层需要连通的地方用软件中提到的所谓“过孔(Via)”来沟通。有了以上解释,就不难理解“多层焊盘”和“布线层设置”的有关概念了。举个简单的例子,不少人布线完成,到打印出来时方才发现很多连线的终端都没有焊盘,其实这是自己添加器件库时忽略了“层”的概念,没把自己绘制封装的焊盘特性定义为”多层(Mulii一Layer)的缘故。要提醒的是,一旦选定了所用印板的层数,务必关闭那些未被使用的层,免得惹事生非走弯路。宏力捷PCB设计!2、过孔(Via)为连通各层之间的线路,在各层需要连通的导线的文汇处钻上一个公共孔,这就是过孔。工艺上在过孔的孔壁圆柱面上用化学沉积的方法镀上一层金属,用以连通中间各层需要连通的铜箔,而过孔的上下两面做成普通的焊盘形状,可直接与上下两面的线路相通,也可不连。一般而言,PCB设计线路时对过孔的处理有以下原则:(1)尽量少用过孔,一旦选用了过孔,务必处理好它与周边各实体的间隙,特别是容易被忽视的中间各层与过孔不相连的线与过孔的间隙,如果是自动布线,可在“过孔数量最小化”(ViaMinimiz8tion)子菜单里选择“on”项来自动解决。(2)需要的载流量越大,所需的过孔尺寸越大,如电源层和地层与其它层联接所用的过孔就要大一些。3、丝印层(Overlay)为方便电路的安装和维修等,在印刷电路板的上下两表面印刷上所需要的标志图案和文字代号等,例如元件标号和标称值、元件外廓形状和厂家标志、生产日期等等。不少初学者PCB设计丝印层的有关内容时,只注意文字符号放置得整齐美观,忽略了实际制出的PCB效果。他们PCB设计的印板上,字符不是被元件挡住就是侵入了助焊区域被抹赊,还有的把元件标号打在相邻元件上,如此种种的PCB设计都将会给装配和维修带来很大不便。正确的丝印层字符布置原则是:”不出歧义,见缝插针,美观大方”。4、SMD的特殊性Protel封装库内有大量SMD封装,即表面焊装器件。这类器件除体积小巧之外的最大特点是单面分布元引脚孔。因此,选用这类器件要定义好器件所在面,以免“丢失引脚(MissingPlns)”。另外,这类元件的有关文字标注只能随元件所在面放置。5、网格状填充区(ExternalPlane)和填充区(Fill)正如两者的名字那样,网络状填充区是把大面积的铜箔处理成网状的,填充区仅是完整保留铜箔。初学者PCB设计过程中在计算机上往往看不到二者的区别,实质上,只要你把图面放大后就一目了然了。正是由于平常不容易看出二者的区别,所以使用时更不注意对二者的区分,要强调的是,前者在电路特性上有较强的抑制高频干扰的作用,适用于需做大面积填充的地方,特别是把某些区域当做屏蔽区、分割区或大电流的电源线时尤为合适。后者多用于一般的线端部或转折区等需要小面积填充的地方。6、焊盘(Pad)焊盘是PCB设计中最常接触也是最重要的概念,但初学者却容易忽视它的选择和修正,在PCB设计中千篇一律地使用圆形焊盘。选择元件的焊盘类型要综合考虑该元件的形状、大小、布置形式、振动和受热情况、受力方向等因素。Protel在封装库中给出了一系列不同大小和形状的焊盘,如圆、方、八角、圆方和定位用焊盘等,但有时这还不够用,需要自己编辑。例如,对发热且受力较大、电流较大的焊盘,可自行PCB设计成“泪滴状”,在大家熟悉的彩电PCB的行输出变压器引脚焊盘的PCB设计中,不少厂家正是采用的这种形式。一般而言,自行编辑焊盘时除了以上所讲的以外,还要考虑以下原则:(1)形状上长短不一致时要考虑连线宽度与焊盘特定边长的大小差异不能过大;(2)需要在元件引角之间走线时选用长短不对称的焊盘往往事半功倍;(3)各元件焊盘孔的大小要按元件引脚粗细分别编辑确定,原则是孔的尺寸比引脚直径大0.2-0.4毫米。五、冯诺依曼结构优点?冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。冯·诺曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。六、仿真与DSP实际运行的差别?在FLASH里运行程序,只是将程序烧写到FLASH中,与在RAM里运行没有本质的区别。但是在FLASH里运行需要设置等待周期,对于对时间要求严格的过程,需要拷贝到RAM中运行,以达到最高速度。这样,如果对程序处理不当,就有可能使在RAM中运行正常的程序烧入FLASH中后就无法正常运行。