物联网与嵌入式专业基础概念
时间:2023-10-03 06:07:01
<目录>
1.模拟信号、数字信号及其转换
2、FPGA及其学习方法
3、电脑休眠、睡眠和待机
4、433M与2.4G
5、X86与X86-64、RAM与ROM
6.摩尔定律、阻抗和马太效应
7、SoC bring-up
1、模拟信号是指温度、湿度、压力、长度、电流、电压等不断变化的物理量所表达的信息,在一定时间范围内可以有无限的不同值。一般通过模拟信号PCM脉码调制(PulseCode Modulation)该方法量化为数字信号,即模拟信号的不同范围对应于不同的二进制值。例如,模拟信号可以用8位数量量化为2^8=256个量级,实际上,通常采用24位或30位编码;数字信号通常通过载波移相(Phase Shift)该方法转换为模拟信号。
信号采样,又称抽样,是信号在时间上的离散,即按一定时间间隔△t在模拟信号x(t)其瞬时值逐步采用。在数字信号处理领域,量化是指将信号的连续值(或大量可能的离散值)近似于多个(或更少)离散值的过程。采样后,连续信号成为离散信号,量化后,离散信号成为数字信号。注意离散信号通常不需要量化过程,但可能不会在值域(如区间值)上离散,或需要量化过程。信号的采样和量化通常是由ADC实现的。
模数转换器即A/D转换器,或简称ADC,它通常是指将模拟信号转换为数字信号的电子元件。通常的模数转换器是将输入电压信号转换为输出数字信号。
模拟数字转换器的分辨率是指在允许范围内模拟信号,它可以输出离散数字信号值的数量。通常使用这些信号值二进制数来存储,因此分辨率经常用比特作为单位,且这些离散值的个数是2权力指数。例如,有一个8模拟数字转换器可以将模拟信号编码成256不同的离散值(因为28 = 256),从0到255(即无符号整数)或从-128到127(即带符号整数),使用哪一种取决于具体应用。
2、FPGA(Field-Programmable Gate Array),即现场可编程门阵列,FPGA一般来说比ASIC(专用集成电路)速度慢,实现相同的功能比ASIC电路面积较大。但它们也有很多优点,比如可以快速成品,可以修改来纠正程序中的错误和更便宜的成本。制造商也可能提供便宜但编辑能力差的产品FPGA。因为这些芯片可编辑能力差,所以这些设计的开发是普通的FPGA完成后,将设计转移到类似的地方ASIC的芯片上。FPGA与并行操作相比,主要是平行操作PC或者单片机(无论是冯诺依曼结构还是哈佛结构)的顺序操作差别很大,也造成了FPGA很难开发。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样的概念包括在内部逻辑模块可以配置CLB(Configurable Logic Block)、输入输出模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA利用小搜索表(16×1RAM)实现组合逻辑,每个搜索表连接到D触发器的输入端,触发器驱动其他逻辑电路或驱动I/O,这构成了一个基本的逻辑单元模块,可以实现组合逻辑功能和时序逻辑功能。这些模块通过金属连接相互连接或连接I/O模块。FPGA逻辑是通过向内静态的存储单元加载编程数据实现,存储在存储单元中的值决定了逻辑单元的逻辑功能以及模块之间或模块与模块之间的逻辑功能I/O连接方式最终决定了FPGA可实现的功能,FPGA允许无限次的编程。
FPGA基础是数字电路和VHDL语言,建议有一本数字电路书。初学者学习Verilog语言,VHDL语言语法规范严格,调试缓慢,Verilog语言易用,一般大企业都用Verilog语言,VHDL语言规范,易读性强,所以一般军工都用VHDL。对于初学者来说,我们需要熟悉一些固定模块的写作方法。在学习FPGA在开发过程中,首先要熟悉电路设计,了解电路的工作过程:电路并行执行。FPGA多练习,多模拟,signaltapII这是一个很好的工具。你可以看到每个信号的真实值。建议初学者自己多做。光看书是没有用的。如果你想学习英文文档,Quartus II所有看它的所有功能handbook可以,很详细。做FPGA最后,工程师通常专注于算法。对于初学者来说,数字信号处理是基础。他们应该理解一切,而不是学习一切。根据您未来的方向,如通信、图像处理、雷达、声纳、导航定位等。
这样学习FPGA最有效:
1)熟悉语法。其实你什么都不需要,但是你需要记住逻辑电路的几个经典时序和描述方法。2)熟悉三个经典电路的描述和模拟。三个经典电路是,分频器,计数器(可以做一个时钟),序列检测器。3)知道了FPGA编程主要不是学习!Verilog是硬件描述语言!描述!!写代码的时候脑子里一定有电路图!!FPGA主要学的是硬件和算法!!软件最多可以占10%!
3.电脑休眠、睡眠和待机
休眠是将当前运行状态的数据保存在硬盘中,整机将完全停止供电。
这时,电脑几乎和平时关机一样安静,你可以完全切断电源,因为保存在硬盘中的数据不会因为断电而丢失!与待机相比,休眠不能通过外部设备它像正常启动一样启动一样启动电脑;但是与开机相比,休眠后启动计算机不需要一个接一个地启动,只需要在硬盘中启动内存镜像读取内存。
将系统切换到待机后,除了内存,电脑其他设备的供电都将中断,只有内存依靠电力维持着其中的数据(因为内存是易失性的,只要断电,数据就没有了)。这样当希望恢复的时候,就可以直接恢复到待机前状态。这种模式并非完全不耗电,因此如果在待机状态下供电发生异常(例如停电),那么下一次就只能重新开机,所以待机前未保存的数据都会丢失。但这种模式的恢复速度是最快的,一般五秒之内就可以恢复。
4、下式为无线信号在空气中传输时的损耗计算公式:
Los = 32.44 + 20lg d(Km) + 20lg f(MHz) Los 是传输损耗,单位为dB d是距离,单位是Km ; f是工作频率,单位是MHz
可见,传输损耗与频率成正比,即频率越高传输损耗越大;或者说在同样传输损耗情况下,传输距离与频率成反比,即频率越高,传输距离越短。 目前的2.4G设备信号传输距离短(一般10~30米,可靠通讯距离10米),传输过程衰减大,信号穿透、绕射能力弱。
433M信号强,传输距离长,穿透、绕射能力强,传输过程衰减较小。
2.4G数据传输速率较高(250kbps),433M速率较低(100kbps)。
目前所采用的射频收发芯片, 2.4GHz技术的先进性实际体现在基于该频点上所开发的带有复杂智能协议的应用,如无线局域网、蓝牙、无线传感器网络ZigBee等,它们的先进性体现在复杂的协议和应用上,如智能网络和自组网技术等,而绝不是体现在射频收发采用了2.4GHz这个频率。
Kbps又称比特率,指的是数字信号传输传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。Kbps也可以表示网络的传输速度,为了在直观上显得网络的传输速度较快,一般公司都使用kb(千位)来表示,如果是KBps,则表示每秒传送多少千字节。1KByte/s=8Kbps。ADSL(ADSL技术提供的上行和下行带宽不对称,因此称为非对称数字用户线路)上网时的网速是512Kbps,如果转换成字节,就是512/8=64KByte(即64千字节每秒)
由于2.4GHz频段在国际上和国内都是无需许可证的开放频段,因此在此频段开发了许多应用,这一频段已十分拥挤。目前在2.4GHz频段上开发的应用主要有:无线局域网、蓝牙、ZigBee无线传感器网络、部分无绳电话以及其他一些短距离无线通讯设备等。而433M数据发射模块的工作频率为315M/433MHz,采用声表谐振器SAW稳频,频率稳定度极高,当环境温度在-25~+85度之间变化时,频飘仅为3ppm/度。
5、X86是由Intel推出的一种复杂指令集,用于控制芯片的运行的程序。x86架构有32位和64位两种。x64(x86-64)就是64位,x86就是32位,32位计算机的CPU一次最多能处理32位数据,64位处理器每次处理 8Byte(64bit)。2003年AMD对X86架构发展了64位的扩充,并命名为AMD64。后来英特尔也推出了与之兼容的处理器,并命名为Intel 64。两者一般被统称为x86-64或x64。
值得注意的是英特尔早在1990年代就与惠普合作提出了一种用在安腾系列处理器中的独立的64位架构,这种架构被称为IA-64。IA-64是一种崭新的系统,和x86架构完全没有相似性;不应该把它与x86-64或x64弄混。
目前市面上的CPU分类主要分有两大阵营,一个是intel、AMD为首的复杂指令集CPU,另一个是以IBM、ARM为首的精简指令集CPU。两个不同品牌的CPU,其产品的架构也不相同,例如,Intel、AMD的CPU是X86架构的,而IBM公司的CPU是PowerPC架构,ARM公司是ARM架构。
RAM-RamdomAccessMemory易挥发性随机存取存储器,高速存取,读写时间相等,且与地址无关,如计算机内存等。
ROM-Read Only Memory只读存储器。存取速度很低,(较RAM而言)且不能改写。断电后信息不丢失,如计算机启动用的BIOS芯片。
6、摩尔定律是由英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)提出来的。其内容为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18-24个月翻一倍以上。随着器件尺寸越来越接近物理极限,研发新一代的工艺节点时,仅缩小器件尺寸是不够的。多家研究机构和半导体公司都在试图改善晶体管结构设计,以尽可能地延续摩尔定律。想要提高微处理器的性能,就需要按比例缩小电路中的元件尺寸,以允许更多的电路能够封装到芯片中,并进而加快电子的移动速度(处理速度)。想要缩小尺寸就势必需要改进光刻技术(在硅表面上进行刻蚀的一种基础性微处理器工艺技术)。
阻抗(electricalimpedance)是电路中电阻、电感、电容对交流电的阻碍作用的统称。阻抗衡量流动于电路的交流电所遇到的阻碍。阻抗将电阻的概念加以延伸至交流电路领域,不仅描述电压与电流的相对振幅,也描述其相对相位。当通过电路的电流是直流电时,电阻与阻抗相等,电阻可以视为相位为零的阻抗。
马太效应的名字来源于圣经《新约·马太福音》中的一则寓言:从前,一个国王要出门远行,临行前,交给3个仆人每人一锭银子,吩咐道:“你们去做生意,等我回来时,再来见我。”国王回来时,第一个仆人说:“主人,你交给我的一锭银子,我已赚了10锭。”于是,国王奖励他10座城邑。第二个仆人报告:“主人,你给我的一锭银子,我已赚了5锭。”于是,国王奖励他5座城邑。第三仆人报告说:“主人,你给我的1锭银子,我一直包在手帕里,怕丢失,一直没有拿出来。于是,国王命令将第三个仆人的1锭银子赏给第一个仆人,说:“凡是少的,就连他所有的,也要夺过来。凡是多的,还要给他,叫他多多益善。”这就是“马太效应”,反映当今社会中存在的一个普遍现象,即赢家通吃。
马太效应(Matthew Effect),指强者愈强、弱者愈弱的现象。早在公元前500多年以前,中国古代哲学家老子就已经提出类似的思想:“天之道,损有余而补不足。人之道则不然,损不足以奉有余。”马太效应”正是老子思想中的“人之道”思想,而“天之道”可用国家整体意志来比喻,国家意志表现为削弱范围内强的个体,补足其他弱势个体,两者正好是既对立又统一的。
美国科学史研究者罗伯特·莫顿(RobertK. Merton)归纳“马太效应”为:任何个体、群体或地区,在某一个方面(如金钱、名誉、地位等)获得成功和进步,就会产生一种积累优势,就会有更多的机会取得更大的成功和进步。
7、“SoC bring-up”通常指的是将操作系统移植到包含SoC芯片的新嵌入式系统的过程。 这包括以下任务:
1、通过编写低级测试代码来协助硬件调试,以运行内存和外设接口。
2、确保引导加载程序可以与特定引导设备通信,并验证整个引导过程是否正常工作。 这还可以包括编写允许将初始引导映像写入空白引导设备的驱动程序。
3、验证正在使用的特定外围设备是否存在操作系统级设备驱动程序。 这可能包括为特定应用程序硬件编写自定义驱动程序。
4、确保应用程序级代码的调试机制到位并正常工作。 这可能包括基于JTAG(硬件)的调试的某种组合或类似于通过网络接口运行的gdb。
总之,这些东西有时被称为“板支持包”或BSP。