芯片

FPGA、单片机、DSP、ASIC的区别

吃可爱长大的小学妹 提交于 2020-02-07 14:17:27
https://zhuanlan.zhihu.com/p/21357765 ASIC原本就是专门为某一项功能开发的专用集成芯片,比如你看摄像头里面的芯片,小小的一片,集成度很低,成本很低,可是够用了。一个山寨摄像头卖才卖30块,买一片ARM多少钱?后来ASIC发展了一些,称为半定制专用集成电路,相对来说更接近FPGA,甚至在某些地方,ASIC就是个大概念,FPGA属于ASIC之下的一部分。 FPGA基本就是高端的CPLD,两者非常接近。我现在用的是ALTERA DE2开发板的CYCLONE系列FPGA。这种器件是用逻辑门来表述性能的。本身他就是一堆的逻辑门,通过硬件描述语言,比如verilogHDL把它转成电路连接,从最基本的逻辑门层面上连接成电路(参见数字电路书上那些全加器触发器什么的)。应该说,虽然看起来像一块CPU,其实是完全硬件实现的。后来因为写代码麻烦,对控制部分比较薄弱,本来跟其他CPU配合使用,即麻烦的算法CPU提交给FPGA,FPGA算完把结果再返回给CPU。可是这样外围电路就变得麻烦。于是提出了SOC设计方法,就是直接在FPGA里写一个CPU出来,既然FPGA万能,做个CPU自然毫无压力。这其中还有软核和硬核的区别,不过除了性能,使用方法大同小异。所谓IP核,就是把各种专用集成电路用硬件描述语言描述,然后烧到FPGA里形成专门的电路,这样就不必另外搭芯片了

phy芯片的那些事儿

断了今生、忘了曾经 提交于 2020-02-06 05:56:11
一、什么是phy 1、phy的基本作用 收到MAC过来的数据(PHY没有帧的概念,都是数据而不管什么地址数据还是CRC),进行处理*,然后把并行数据转化为串行流数据,再按照物理层的编码规则把数据编码,再变为模拟信号把数据送出去。 实现CSMA/CD(多点接入载波监听/冲突检测)的部分功能,可以检测到网络上是否有数据在传送,如果有数据在传送中就等待,一旦检测到网络空闲,再等待一个随机时间后将送数据出去。冲突检测机构可以检测到冲突,然后各等待一个随机的时间重新发送数据。 处理方法: 100BaseTX采用4B/5B编码(每4bit就增加1bit的检错码) 10BaseTX采用曼彻斯特编码 2、phy和switch在信号上的区别 PHY芯片 ,主要是将这些模拟信号进行解码,通过MII等接口,将数字信号传送出去。在解码的过程中,它只是做信号的转换,而不对数字信号进行任何的处理,即使一帧有问题的数据,它也会如实的转发出去。 switch芯片 是对帧数据的内容做处理,更新MAC地址列表等等,是先有PHY后有switch。 二、一些需要注意的硬件连接 1、网络变压器(数据泵) 一颗CMOS制程的芯片工作的时候产生的信号电平总是大于0V的(这取决于芯片的制程和设计需求),但是这样的信号送到100米甚至更长的地方会有很大的直流分量的损失。而且如果外部网线直接和芯片相连的话,电磁感应(打雷)和静电

百度大脑大升级:各种算法并驾齐驱

北战南征 提交于 2020-02-03 03:22:39
导读 百度大脑大升级:语音、视觉、语言与知识 AI 算法创新并驾齐驱 7 月 3 日下午,「Baidu Create 2019」百度 AI 开发者大会百度大脑论坛如期举行。在上午主论坛中,百度首席技术官王海峰正式发布百度大脑 5.0,实现了历史上最具跨越性升级,在算法突破、计算架构升级的基础上,实现 AI 算法、计算架构和应用场景的融合创新,成为软硬一体 AI 大生产平台。 百度AI开发者大会 重磅升级后的百度大脑 5.0 打通了从基础层的深度学习技术到通用 AI 能力、应用技术方案,再到定制化模型,以及最终的部署和集成,整个人工智能产业化应用落地的全部流程,实现了 AI 技术的标准化、自动化和模块化。 一直引领行业创新的百度大脑语音技术此次亮出在语音识别、语音合成、远场语音交互芯片方面的成绩单。百度语音技术部高级总监高亮介绍,识别方面,百度提出流式多级的截断注意力模型 SMLTA,这是国际上首次实现局部注意力建模超越整句的注意力模型,也是国际上首次实现在线语音大规模使用注意力模型。SMLTA 在大幅提升识别速度的同时,也提高了识别准确率。在输入法有效产品相对准确率提升 15%,音箱有效产品相对准确率提升 20%。合成方面,针对现阶段面临风格迁移、音色模拟和情感拟人的三大挑战,百度推出语音合成技术 Meitron,可以将语音中的音色、风格、情感等要素映射到不同的子空间,在使用时

4004

那年仲夏 提交于 2020-02-02 00:36:32
404这个数字,也许是你在浏览网页的时候会经常碰到的数字,一旦看到它In微处理器是现代计算机的核心。它们是可编程的,意味着它们可以被执行给定的编程指令,并返回执行结果。 在它们被发明之前, 完成同样的工作需要许多个电子芯片协同工作才行,这些器件往往被组装在多个机柜中。 你所不知道的是,现在以生产处理器闻名于世的Intel公司最初在它推出4004微处理器之前是一家生产 计算机内存的公司。 在1969年末的时候,当时属于日本一家计算机公司,Busicom,为了生产一款141-PF型数字计算机,与Intel签署商业合同,要求Intel公司为其定制十几种专用芯片。 当时Intel公司人员匮乏,居然没有人能够来完成书面合同内容形成文档,这就使得当时Intel公司的Faggin和他的研究团队思考新的解决方案。抛弃了原本需要多个芯片组成完成的方案,转而提出一个基于单个芯片,通过软件编程就能够实现通用计算器所需要的十二项功能的目标。 由此就诞生了世界上第一片半导体微处理芯片4004。它由2250个晶体管组成。与其功能相同的世界上第一台电子管计算机ENIAC,它的组成部件却要占据一间大的机房。相比之下,这片微处理器芯片的诞生的确具有划时代意义。 与现在的计算机动辄数千兆赫兹(10的9次方)的运行速度不同,当时的4004处理器运行时钟频率仅仅为740Hz。 当时的4004也只是一片CPU,即中央处理器

低压差降压稳压电路设计

牧云@^-^@ 提交于 2020-02-01 18:51:56
TPS73xx系列(TPS7301,25,30,33,48,50等)是一款低压差串联型降压稳压芯片,可以提供500mA的稳压电流,在输出100mA电流的情况下,输入输出电压压差可以最多不超过35mV,这可以大大提高稳压电源的效率,或者提供大的电源稳压范围。 除了主要提供电源稳压功能之外,芯片内部还集成了电压检测模块,可以输出低电平RESET信号,为供电的微控制器、处理器提供复位功能。 TPS7333管脚分布,SOP8小型封装 近期正好有款电子设计需要使用低压差稳压电路,在应用之前对该稳压芯片的稳压基本性能做一些测试。 下面是测试该芯片的基本电路,其中没有使用它的RESET信号。在输出中串联了50毫欧姆的电阻用于测量输出电流。 测量电路原理图 使用快速制版制作建议的测量电路,焊接SOP封装的TPS7333芯片。 通过程控稳压电源提供TPS7333的输入电压,这样便可以测量该芯片对于输入电压的稳压效果。 实际测量实验电路 TPS7333的输出电压与输入电压的关系可以有下面动图显示。它显示了输入电压从0V一直增加到6V过程中,输出电压的实测变化过程。此时,TPS7333的输出连接一个固定的50欧姆的负载电阻。 这个输入输出关系曲线分为三个部分:在输入电压大约小于2V之前,输出电压为0V;在输入电压大于2V,小于3.3V之前,输出电压基本呈现线性变化的关系,即输出电压基本上等于输入电压

AD19的IPC封装向导使用

寵の児 提交于 2020-02-01 02:58:56
  Altium Designer自带的封装向导包含的模型内容很少,并且需要人为计算封装参数。AD19为其添加了一款功能更强的封装向导,IPC封装向导。   首先新建一个pcblib文件。依次单击工具(T)->IPC compliant footprint wizard。出现如下界面:   可见,相比老旧的封装向导,IPC封装向导包含的模型更多了。这里以常见的数字/数模芯片封装SOP-16举例该如何使用IPC封装向导设计一款封装。   点选“SOP/TSOP”后进入上图所示界面。最左边一栏为封装的各种参数,中间一栏是各参数对应的物理长度示意,最右边一栏是目前参数的封装大致示意图,可以点击红框处切换2D/3D显示。   首先参数第一栏“width range”为芯片包含引脚的总长度,也就是中间示意图对应的变量H。   这里从网上找到了一个SOP16标准封装的文档。在文档中可见,芯片总宽度对应的是E。   在文档的数据表里查看“E”对应的数据大小。这里注意一下数据表有三列。第一列是变量名;第二列的毫米为单位的数据;第三列为英尺对应的数据。我们一般使用毫米为单位。在毫米为单位的列中又有MIN NOM MAX三个小列。由于工艺误差的存在,芯片的尺寸不可能是完全一样的。这里的MIN和MAX对应芯片数据的最小值与最大值,而NOM代表标准值。标准值在IPC封装向导里是没用的

树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据

萝らか妹 提交于 2020-01-31 13:19:24
树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据 今天和小朋友一起玩树莓派,打算来做一个测量室温的小实验。经过几个小时的研究和测试,终于能够成功读取LM35传感器的温度数据了。本文主要记录一些这个实验的过程。 使用的材料 Raspberry PI 3B 这个就不用多介绍了,超级流行的一块开发版。我安装的操作系统是 Ubuntu for Arm Server v19.10 树莓派Raspberry PI 3 引脚编号 ADC0832模数转换芯片 ADC0832 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。ADC083X是市面上常见的串行模—数转换器件系列。ADC0831、ADC0832、ADC0834、ADC0838是具有多路转换开关的8位串行I/O模—数转换器,转换速度较高(转换时间32uS),单电源供电,功耗低(15mW),适用于各种便携式智能仪表。本章以ADC0832为例,介绍其使用方法。 ADC0832是8脚双列直插式双通道A/D转换器,能分别对两路模拟信号实现模—数转换,可以用在单端输入方式和差分方式下工作。ADC0832采用串行通信方式,通过DI 数据输入端进行通道选择、数据采集及数据传送。8位的分辨率(最高分辨可达256级)

模拟电路的数字化

独自空忆成欢 提交于 2020-01-31 04:03:07
模拟技术的困境|半导体行业观察   模拟技术衰落有几个原因,其中一些是建立在自身缺陷上的。摩尔定律适用于数字电路而不是模拟电路;晶体管可以而且必须做得更小,这有利于数字电路。但这对模拟晶体管的影响并不大,反而器件尺寸越小,模拟器件特性往往越差。器件的小型化一直是这个世界技术进步的关键,在这一点上模拟技术不能跟上时代,渐渐被遗忘了。   工艺技术已经针对数字化进行了优化,这并不奇怪,但这对剩下的模拟元件造成越来越大的压力。产品生命周期中的制造工艺变化和参数退化在模拟世界中更具挑战性。这意味着模拟元件需要比数字元件更多的分析和巧妙的设计。 PHY(英语:Port Physical Layer),中文可称之为端口物理层,是一个对OSI模型物理层的共同简称。 PHY连接一个数据链路层的设备(MAC)到一个物理媒介,如光纤或铜缆线。典型的PHY包括PCS(Physical Coding Sublayer,物理编码子层)和PMD(Physical Media Dependent,物理介质相关子层)。PCS对被发送和接受的信息加码和解码,目的是使接收器更容易恢复信号。 将模拟电路数字化可减少芯片面积 系统芯片 ( 英语: System on Chip , 缩写 : SoC )是一个将 电脑 或其他 电子 系统 集成到单一芯片的 集成电路 。系统芯片可以处理 数字信号 、 模拟信号 、 混合信号

S3C2440-裸机篇-07 | S3C2440内存控制器(Memory Controller)

╄→尐↘猪︶ㄣ 提交于 2020-01-30 07:48:12
1. 作用 S3C2440的内存控制器作用是: 负责向外部扩展的存储类设备提供控制信号 。 内存控制器支持的外部扩展存储类设备有: SRAM SDRAM Nor Flash 网卡DMA 9000(类存储设备) 内存控制器不支持nand flash,S3C2440提供了独立的nand flash控制器。 2. 内存控制器拓扑结构 CPU、内存控制器、外部扩展存储器三者的拓扑结构如下: 其中这四种信号的意义如下: 地址信号(总线):作为存储器,其中的每个存储空间肯定有地址,地址总线用来传输地址; 数据信号(总线):用来传输某个地址处的写入数据或者读出数据; 读/写选择信号(控制信号):用来控制向地址处写入数据还是从地址处读出数据; 片选信号(控制信号):所有存储器全部共用一个地址总线和数据总线,所以用片选信号控制选择哪个设备工作,哪个设备不工作; 片选信号每个设备用一根线就可以搞定,读写选择信号每个设备用1-2根线就可以搞定,那么, 数据总线和地址总线有多少条呢 ? 数据总线宽度 数据总线的 最大宽度由CPU字长决定 ,S3C2440 CPU的字长为32位,所以数据总线的最大宽度为32条。 具体使用多少条数据总线,由存储设备决定 。 地址总线宽度 地址总线的 最大总线宽度由内存控制器寻址能力决定 。 S3C2440内存控制器的地址映射图如下:一共有8个bank

S3C2440-裸机篇-08 | 使用S3C2440操作SDRAM(配置内存控制器)

删除回忆录丶 提交于 2020-01-30 03:09:13
1. 前言 提起SDRAM,大家都会觉得太难了,要编程写出SDRAM的控制时序更是难上加难,对的,没错!一年前我也是这样想的,学习这一节内容的时序觉得非常难,视频看了好几遍不太懂,对于SDRAM的控制原理更是没看懂,一年后回过头来再看视频,茅塞顿开,看不懂的原因是因为:我自己把它想的太难了,其实, 它很简单,总共也就5行代码,设置5个寄存器即可 。 简单的原因要归功于S3C2440内部的内存控制器,它的作用就是 负责向外部扩展的存储类设备提供控制信号 ,所以当CPU要去访问属于SDRAM时,只需要去访问属于SDRAM的映射地址即可,内存控制器会发出信号,控制时序去和SDRAM打交道,写入数据或者是读出数据。 尽管我们不用手写操作时序了,我们仍然要 编写程序去控制时序 。 因为S3C2440的内存控制器是普遍的,不可能只能接一种SDRAM芯片,而是所有的SDRAM芯片都可以接,但是 不同厂商的SDRAM芯片性能有差异 ,也就是说,虽然所有SDRAM芯片的控制时序都一样,但是A厂商生产的SDRAM芯片在发出控制信号之后70ns之后才有数据,B厂商生产的SDRAM芯片在发出控制信号后60ns就有有效数据,这就叫做不同的SDRAM芯片的性能不同。 所以内存控制器设置了一些寄存器, 允许用户根据实际接的SDRAM芯片性能去配置具体的时间参数即可 ,称之为SDRAM初始化或者内存控制器初始化