如果严格分的话应该属于软。嵌入式其实就是面向应用、成本功能严格要求的计算机系统。这个系统只要求完成特殊的功能,所以不必要的组件(包括软硬)就被“丢弃”。如果把计算机划分成3层的话,应该大致是下面的情况:硬件---》系统---》应用程序 一般来讲硬件部分的工作比较少。
如果做牵涉到底层的东西,关系就大了,举个例子,一个新产品,电路图就必须能看懂,要不你怎么去控制呢?看懂电路图就必须要会很多数电,模电的知识,例如mos管,三极管等等 至于驱动,更有关系了,一个硬件想要工作,必须要有相应的驱动。
这完全两个 不是一回事 ,嵌入式硬件 你得会计算机编程(一般是c语言),会数电模电,会pcb布板,会设计电路图,等等,是个很尖端的技术,应用领域不单纯的在普通电脑,航空,航天都能用到。。
硬件层,是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。
当然是嵌入式系统开发了,集成电路只要硬件牛就可以了,嵌入式要求软件(C、汇编)和硬件(ARM体系、DSP、FPGA等,或PCB制版也需要),所以比较全面,要求知识程度也搞。
如果你要是想设计嵌入式的话,还是应该学集成电路。另外说一下就业定位:硬件难学,人才少,不过需求也稍微小于软件/应用设计,但是起薪会较高(现在IC设计本科生都不要了,你要做这行还想往高端走,读研几乎是必须的)。而软件好上手,稍微有点经验就可以做,做牛了待遇也是不错的。
高薪、就业机会多:通过从加拿大或美国的一些比较大型的找工网站(如Workopolis, Monster, Dice等)查找不同的工作机会,发现嵌入式系统的工作机会是近年来增长最多的。薪水方面,加拿大起薪大约在5万元以上,美国起薪是8万美金以上。
因此,选择集成电路还是嵌入式系统取决于具体的需求和应用场景。如果您需要设计和开发电子设备、计算机芯片等,那么集成电路是更合适的选择。如果您需要实现特定功能的控制系统或嵌入式应用,那么嵌入式系统会更适合。
这三个专业的就业情况得看你所在院校那个专业是优势专业。前两个行业算是朝阳产业,发展前景不错,技术更新也快。中国是半导体制造(代工)大国,在IC设计上还是比较落后的,需要大量优秀的IC设计精英。
主要课程包括工程师职业道德与素养、C/C++程序设计、操作系统、数据结构、电路理论、模拟电路、数字电路、计算机组成原理、算法分析、高级数字系统设计、VLSI电路设计、嵌入式系统开发导论、CMOS模拟集成电路设计、测试技术及工程设计学导论等。
嵌入式系统的学习难点有很多,以下是一些常见的难点: 需要学习大量的软硬件知识。不仅需要学习C语言、汇编语言等编程语言,还需要了解硬件方面的知识,如电容电阻、模电数电、PCB等等 。 各种硬件平台的生产力工具不统一。编码、编译、调试、烧录等方面都是大坑。
嵌祊式系统的难点在于硬件和软件的结合。工程师需要理解底层硬件的工作原理,并知道如何在该硬件上实现软件功能。这需要涉猎多种技术,包括电子技术、计算机组成原理等。此外,嵌入式系统通常需要针对特定的应用进行优化,这需要丰富的实践经验和深入的行业知识。
嵌入式的深度和挑战:嵌入式系统的学习深度非常大,涉及到硬件、操作系统、实时系统等多个领域的知识。随着技术的进步和应用场景的变化,嵌入式系统的挑战也在不断增加,需要不断地学习和更新知识。总的来说,Java和嵌入式系统都是技术深度很强的领域,各有其难点和挑战。
嵌入式培养是近年来国家提出来的。面对庞大的市场人才需求。使得这专业越来越火,嵌入式教学的难点是,以MCU 和嵌入式处理器为代表的嵌入式技术发展很快,而教师、课件、实验环境很难同步跟进。
第3层次:以IP为内核库嵌入式设计的基础,用软硬件协同设计技术的设计方法。为了加快单片系统设计的周期以及提高系统的可靠性,目前最有效的一个途径就是通过授权,使用成熟优化的IP内核模块来进行设计集成和二次的开发,利用胶粘的逻辑技术GLT把这些IP的内核模块嵌入到SOC中。
嵌入式系统的组成包含了硬件层、中间层、系统软件层和应用软件层。 硬件层:嵌入式微处理器、存储器、通用设备接口和I/O接口。 嵌入式核心模块=微处理器+电源电路+时钟电路+存储器 Cache:位于主存和嵌入式微处理器内核之间,存放的是最近一段时间微处理器使用最多的程序代码和数据。
第一阶段:基础与理论阶段。主要包括一些理论知识,你至少了解这行业吧,基本的Linux系统使用;其次就是嵌入式核心开发语言C语言(必须精通);了解C语言数据结构及经典算法编程;最后就是要了解嵌入式产品的一个基本的开发流程,这对后续的开发有很大的帮助,不至于是那么的迷茫。第二阶段:嵌入式系统核心开发。
第一步: 硬件设计:主要是设计硬件电路图、绘制硬件原理图、绘制硬件PCB图、制作出PCB板。第二步: 软件设计:主要是设计系统的底层函数、API函数、植入操作系统、设计应用程序。