重拳!美芯片巨头美光在华遭禁售,福州法院裁定诉中禁令立即生效
近期牵涉多家中国企业与美国企业之间的半导体专利侵权诉讼纠葛纷扰不断,但,就在昨天,整起事件出现重大惊人进展。
图丨福建晋华官方发布消息
7 月 3 日福州中级法院裁定对美国芯片巨头美光(Micron)发出“诉中禁令”,美国部分闪存 SSD 和内存条 DRAM 将暂时遭禁止在中国销售,虽不是最终判决,但似乎暗示美光确实有侵权之嫌。而这是中国发展半导体一路被指称“窃密”和“侵权”以来,首次成功重拳回击!
或许受此次负面消息影响,美光今日遭受大跌,跌幅超过 6%。
图丨美光股价
福州市中级人民法院 3 日裁定美光半导体销售(上海)有限公司立即停止销售、进口十余款 Crucial 英睿达固态硬盘、内存条及相关芯片,并删除其网站中关于上述产品的宣传广告、购买链接等信息。同时,也裁定美光半导体(西安)有限责任公司立即停止制造、销售、进口数款内存条产品。
福建晋华指出,通过先进实验室逐层剖析,发现美光的十余款自有品牌产品涉嫌侵害晋华专利,包含数款 DDR4 笔记本等,以及 MX500 系列的 2TB 、 1TB 、 500GB 、 250GB 2.5 英寸的固态硬盘和相关侵权芯片,确定该等产品的技术方案落入晋华专利要求的保护范围。
晋华主张,美光明知此前热销的 MX 300 固态硬盘存在侵权疑虑,仍继续在目前热销的主流产品 MX 500 系列上延续使用侵犯晋华专利的技术方案。
阿里巴巴、华为等互联网企业大量采用美光服务器SSD,“禁令”后果不堪设想
美光是全球三大内存供应商之一(另两家为三星和 SK 海力士),也是位居全球六大闪存芯片供应商之列(另五家为三星、SK 海力士、东芝、西部数据、英特尔),美光将近 50% 的营收都来自中国,一旦美光部分产品在中国禁止销售,恐形成重击。
更重要的是,美光是国内阿里巴巴、华为、腾讯、百度等互联网企业的服务器 SSD 模组供应商,应用在云端存储系统中,若是美光供应给这些大厂的存储产品涉及侵权问题,那在中国数据中心服务器存储的最大供应货源恐怕会陷入“急冻”状态。
近两个月来,《华尔街日报》和《纽约时报》不约而同出现同一论调的报道,指出中国通过大量网罗台湾半导体产业人才,以及“窃取”相关技术来发展自主芯片计划。
这样的控诉和论调其实源自于美光从 2017 年初以来,对于大陆 DRAM 厂福建晋华的诉讼指控。
这其中包括,美光有两名子公司的离职员工因携带技术资料到福建晋华任职,因此在台湾被控告侵犯营业机密。而福建晋华因为与台湾晶圆代工厂联电合作 DRAM 技术开发,导致联电也因为“未善尽管理之责”而同步列为被告,且美光同步在美国加州对两家公司提出民事诉讼。
今年初,福建晋华和联电在福州中级法院反告美光旗下的闪存和内存产品侵犯其四项专利,其中包括晋华与联电各自拥有的两项专利,共计四项。经过六个月的审理,3 日福建中级法院正式裁定“诉中禁令”,暂时禁止美光的部分闪存 SSD 和内存 DRAM 在中国销售。
“诉中禁令”不等同于司法判决,但裁定结果一送达即可立刻执行。当事人在收到裁定之日起,10 天内可以申请复议,简单地说,如果当事人认为自己并未侵权,可以进行合理抗辩,一旦被法院采纳,可以声请禁售期间所遭受损失的赔偿,但声请复议的期间该禁令将会继续执行,且仅有一次申请复议的机会。
而以福州中级法院的裁定来看,此一“诉中禁令”的裁定意义,在于法院在审理过程中,认为原告福建晋华和联电主张美光侵权确有理由,美光的确具有侵犯福建晋华和联电专利的可能性,整个事件发展至此,确实是业界始料未及的。若是美光无法提出有力的证据抗辩,其长期以来制造福建晋华和联电“偷窃技术”的手法,恐将不攻自破,也等于是重重被打了一个巴掌!
业界分析,联电在半导体产业将近有 30 年历史,虽然擅长领域是逻辑制程技术,也就是晶圆代工业务,但联电和存储技术也是颇有渊源。
当年日本唯一仅存的内存供应商尔必达 ( Elpida) 在转进 65 纳米铜制程技术时遇到瓶颈,曾找过联电帮忙,当时的铜制程转换是半导体产业很头痛的天险,联电也吃过不少苦头,之所以会“帮助”尔必达,是因为联电荣誉副董事长宣明智和当时尔必达社长坂本幸雄交情甚笃,这才让联电在关键时刻出手相助。由此也可看出,联电在存储技术领域确实具有不容小觑的实力。
“价格操作”反垄断调查如火如荼进行中,中国、美光彼此究竟想要什么?
去年起,中国反垄断机构陆续调查全球三大内存供应商三星、 SK 海力士、美光企图操纵 DRAM 价格,这三家掌握全球 95% 的市场份额,过去两年因为控制扩产,导致价格数倍上扬,去年底开始,引发中国手机厂的强烈不满,进而演变成近来持续延烧的反垄断调查风暴。
更严重的是,美光因为阻止福建晋华发展 DRAM 技术,企图通过多个途径“制裁”福建晋华,其中包括向部分半导体设备供应商施压,要求其不得销售设备给晋华来做 DRAM 开发。
行业内人士推测,对于福建晋华和合肥长鑫两家 DRAM 厂,美光特别忌惮福建晋华能成功开发 DRAM, 因为其主导者出身美光体系,加上联电长达 30 年的半导体经验,该阵营的胜算不小。因此,美光对于福建晋华特别"另眼相待", 就是要趁着晋华“长大成人”前先“斩草除根”。
美光究竟要什么?难道只是希望中国能终止 DRAM 自主研发计划吗?
行业内人士分析,美光口袋里的另一套计划,恐怕是希望福建晋华能屈服,除了停止研发计划外,还能向美光授权其 DRAM 技术,把福建晋华的角色变成旗下众多的代工厂之一,当成“殖民地”来控管。
不能重蹈台湾地区的覆辙
过去美光以“华亚模式”大量与台湾半导体厂合作,但最后证明这是一个失败的模式,台湾发展 DRAM 产业二十年却不具备任何技术,最后只留下一堆晶圆厂低价卖给外企,DRAM 变成一场“DREAM”。
所谓的“华亚模式”是由台湾台塑出钱盖晶圆厂,旗下的南亚科技和美光合资成立子公司华亚科技(该公司前身是南亚科与德国奇梦达 (Qimonda) 合资成立,奇梦达破产后由美光接手),美光可分享扩产的 DRAM 产能,却不用花钱盖厂。
在此模式下,美光授权 DRAM 技术给华亚科生产制造,每年华亚科都要付出一大笔的专利授权费用,但却不拥有独立技术,如果当年度 DRAM 市场供过于求导致价格崩盘,华亚科母公司之一南亚科,也会因为认列投资亏损而连带大亏。
现在的情况是,美光告福建晋华和联电侵害其营业机密,而福建晋华和联电反告美光侵犯其半导体专利。 此案进入“诉中禁令”阶段,美光可以在十日内提出抗辩,表达其专利并未侵权,但只有一次机会,如果美光抗辩失败,最后恐怕是需要寻求与福建晋华和联电达成和解。
但不要忘了,除了美光自己的专利现在有侵权之嫌疑外,目前台湾 DRAM 南亚科和力晶生产的 DRAM 产品都有使用美光的技术,万一当中也内含侵犯福建晋华和联电手上的四项专利,这项侵权官司案恐怕将由野火般蔓延开来。
不过,福建晋华和联电告美光的初衷,应不是为了再产业大打专利诉讼战役,其目的是希望美光不要再营造其“窃取”技术的形象,并且能撤回控告其侵犯营业机密一案。
这个案子的出现,恐怕对于现在处于供过于求的 NAND Flash 内存市场,以及处于价格高点的 DRAM 产业,恐将投下一个“深水炸弹”。
美光若因侵权无法在中国销售,对全球存储价格是一枚深水炸弹
若是最后判决结果是美光有侵权的事实,如果美光不和解,那未来美光的 DRAM 和 SSD 将无法在中国销售。 美光的业务极度依赖中国市场,尤其是中国互联网企业大量采用美光的服务器 SSD,这些大厂未来势必不敢采用美光产品,这对于现在手上一堆 NAND Flash 库存的三星,将是率先受惠获得转单。
然这个巨大的商机对于三星而言,恐怕也是如履薄冰。因为即使有天上掉下来的订单出现在眼前,身陷反垄断调查的三星、SK 海力士等也不敢因此而随意涨价,DRAM 已经被中国控告操控价格,万一针对 NAND Flash 涨价,恐怕再记上一笔,且被抓到证据。
比较不好的后续结果是,美光无法在中国销售的内存和闪存产品,可能会拿到其他国家销售倒货,那也会把整个存储市场的价格压下来,成为未来存储产业的一枚炸弹。
这次美光被福州中等法院因为“诉中禁令”,导致部分产品暂时禁止在中国销售,等同是中国、美国半导体专利侵权大战方酣之际,剧情急转直下的来了一出“中国厂商抢先得分,美国企业意外吃鳖”,情节已经脱离先前外界预想的剧本。
然而芯片产业的发展是长期的,美光是非常“政治性”的企业,且一向以“好斗”闻名,这次会否轻易投降,恐怕还很难说,因为这关系着美光最大依存的中国市场未来商机。
得罪中国,对美光没有好处,但中国的 DRAM 技术若做出来,美光恐怕将彻夜难眠,未来要看彼此手上还有什么底牌,以及两大阵营背后力量的角逐,这出戏,恐怕还很长!
嵌入式 linux 开发
首先说一下嵌入式方向
嵌入式方向
嵌入式工程师需要掌握的知识面很广,包括嵌入式软件、嵌入式硬件以及相关行业和产品的专业知识。作为嵌入式初学者,我们不可能也没有精力去掌握所有的知识,要学会抓住重点,有所取舍,才能达到“一专两能,事半功倍”的学习效果。首先嵌入式技术主要分为嵌入式软件和嵌入式硬件两大方向。
嵌入式硬件
嵌入式硬件工程师主要工作职责是设计产品的硬件电路原理图,设计硬件PCB板,选择合适的元器件,焊接、调试硬件电路板,保证硬件电路板的可靠性、稳定性、抗干扰能力。
因为集成电路发展很快,大部分集成电路厂家都会提供参考电路,所以硬件电路原理图的设计比较简单。硬件工程师的工作价值主要体现在产品的可靠性和稳定性设计,以及电磁兼容性设计上。这也就是硬件设计工程师的价值所在。
成为一名高级嵌入式工程师的难度还是比较大的,一方面需要有非常扎实的理论知识,另一方面还需要有相当多的大型、高频CPU,以及多层PCB板的设计经验。
嵌入式硬件工程师需要学习的课程主要有模拟电路设计、数字电路设计、电磁波理论等,熟悉常用的放大电路、滤波电路、电源电路的设计和分析。
嵌入式软件
嵌入式软件工程师的主要职责是根据产品的功能需求进行软件设计,并使硬件工作起来。
嵌入式电子产品的硬件大体相同,核心都是由CPU、RAM、FLASH组成,而软件则有很大差异,产品的具体功能都是由软件来实现的,一般来说,一款产品的软件设计工作量是硬件设计的4~5倍。
所以一般来说,一个公司中软件工程师的数量是硬件工程师的4到5倍,嵌入式软件工程师的需求量要远远大于硬件工程师,同时相比于硬件工程师,嵌入式软件工程师相对来说也比较容易学习。
问:1、我想学嵌入式系统,应该掌握哪些方面的内容?
如果要学习嵌入式系统,需要掌握以下内容:硬件设计(包括单片机、处理器、板载电路等)、汇编语言、C/C++编程、操作系统(如Linux或UCOS)、通信原理、中断、DMA、实时系统、模拟电路、数字信号处理等。
2. 需要有什么基本基础吗?
C
认真学习C语言,认真学习C语言,认真学习C语言,重要说三遍。
C 语言在嵌入式系统中至关重要。它是您入门嵌入式系统的工具,并且在您的工作中经常使用。
不管是做嵌入式软件还是硬件开发,掌握C语言都是必须的,特别是对于以后致力于嵌入式软件开发的人,现在大部分都是用C语言的。
操作系统
了解操作系统必定会帮助我们提高对硬件和软件的理解。
比如进程,线程,系统如何分配资源,系统如何管理硬件。当然这些光看书是不可能全部理解的,如果一时看不懂也没关系,多看书,结合以后的项目经验,就会理解得更透彻。
还有Linux或者WinCE下的编程,对以后的应用程序编程很有帮助。
当然如果做手机的话可以学习MTK、Symbian、Android等操作系统,Android也是基于Linux系统封装的,所以建议先学习Linux。
基本硬件原理
嵌入式工作肯定是要和硬件打交道的,如果是做嵌入式应用层的,可能接触硬件比较少,不过很多公司面试的时候也会问一些基本的硬件知识。
比如我同学面试联发科 C++ 工程师的时候,就被问了很多硬件方面的问题(什么是中断,什么是轮询,两者有什么区别,一个基本的嵌入式系统由什么组成等等)。所以硬件知识掌握得越多越好,哪怕是做应用层,一些最基础的东西还是要懂的。
如果你打算从事嵌入式系统工作,那么你需要具备相当高的硬件知识水平。比如,LCD 是怎么显示的,IIC 协议/SPI 协议是什么,如何收发数据,不同设备对 IIC 速度有什么要求,IIC 协议一般的上拉电阻是多少等等。只有了解了硬件原理,看芯片手册的时候才能明白如何配置各个寄存器。
另外,如果能掌握一些常用设备和仪器的使用就更好了,跟硬件工程师辩论的时候会用到。比如万用表,示波器,逻辑分析仪等等。如果不会用也没关系,这部分不是必须的。
数据结构和算法
这部分是程序员的必修课,各大公司秋招、春招都会有笔试和面试,链表、二叉树、堆、队列等常见数据结构,常见排序算法及其改进(快速排序、归并、冒泡、插入)等都是必须掌握的。如果在找工作,这部分内容一大堆是需要记下来的。(相关内容可参见我整理的嵌入式软件工程师笔试及面试指南)
虽然嵌入式系统对于数据结构和算法的要求没有传统互联网那么高,而且这些数据结构在以后的工作中也不一定用得到,但是一些基本的还是需要了解的。
比如Linux内核就用到了大量的链表,二叉树等等,掌握这一部分对于我们将来转行,深入研究操作系统都有很大帮助。
计算机基础
这部分直接决定了我们以后能不能走得更远,需要了解操作系统的基本概念,计算机组成原理,比如自旋锁,信号量,阻塞与非阻塞等等。
学习任何技术,都要了解该技术的边界。对于嵌入式系统来说,它的边界就是汇编。你不需要会写汇编语言,但必须能看懂它(其实是 Arm 指令集)。很多时候,读懂反汇编文件会让调试 bug 变得更容易。
微控制器/ARM
虽然现在51单片机用的越来越少了,但是在一些要求不高的项目中还是会用到的,个人觉得学51就是学一些基础知识,对以后学习其他芯片有帮助。
比如市面上应用比较广泛的STM32、ARM系列芯片,有L0、F0、F1、F4等多个系列,基本都差不多,学完一个,其他的分分钟就能上手。
如果你理解了上面的知识,那么是时候去读一些优秀的代码了。当然,最重要的是多做动手工作!
3.不同阶段需要掌握什么?(参考小熊讲嵌入式系统)
· 初级嵌入式工程师
这个阶段主要是初入行的过程,主要针对刚进入这个行业的新人,其实成功没有什么捷径,打好基础才是关键。
对于这个阶段,可以先给自己定一个小目标,比如在一段时间内学会在Linux下进行日常活动(写文档,看视频等),可以通过网上查找资料或者购买相关书籍进行练习。
如果你有需要,这里有嵌入式Linux开发相关的学习课程,不需要开发板,适合初学者,不花钱,点击下方卡片即可免费开始学习。
主要包括以下四个方面:
1.电路知识
首先要学好电路、模拟电子学、数字电子学,了解电阻、电容、三极管,了解基本元器件,能看懂放大器、集成运放、定时电路等基本电路,否则看电路图就会眼花缭乱,无法开展后续工作。
硬件产品的设计和实现,包括器件选型、原理图和PCB设计、电路调试等都需要扎实的电路基础。
2.C语言
C语言是嵌入式开发中最重要的编程语言,需要对这门语言有很深的理解,毕竟不但能写程序很重要,能看懂别人的程序也很重要。
必须要能了解最基本的数据类型,数组,指针,结构体,链表,文件操作等等,掌握基本的语法和语句。
3. 微控制器
单片机入门比较简单,通过学习单片机可以熟悉单片机的硬件结构,包括I/O口、AD转换、通信(串口、并口、I2C、CAN、USB、以太网、ZigBee技术等)、显示(LED、LCD等)、控制(PWM等控制技术)、数据处理(图形、图像、语音、视频等的处理或识别)等,学好单片机可以为嵌入式系统的使用打下良好的基础。
4. Linux 基础
Linux的源代码和体系结构都是开放的,在嵌入式系统中应用特别广泛,学习Linux对系统开发有很大的帮助。
详细了解Linux下的目录结构、基本命令、编辑器VI、编译器GCC、调试器GDB以及Make工程管理工具、Shell Makefile脚本的编写、以及嵌入式开发环境的搭建。
中级嵌入式工程师
经过第一阶段的学习,你已经可以从事嵌入式开发工作了,但是还有很多的知识需要学习才能进步,而这个阶段也会是第一个分水岭,让优秀的嵌入式工程师脱颖而出。
这个阶段虽然只有三项,但是涉及的知识面很广,要学好需要下不少功夫,实践练习也很重要,最好有大佬可以指点开发理解和代码调试能力。
1. Linux 编程
系统编程可以直接与内核、核心系统程序库进行交流,深入了解Linux内核。
掌握Linux系统编程主要提高对Linux应用程序开发的了解以及代码调试的能力。
随着网络应用开发越来越广泛,从Linux网络开发、TCP/IP协议、socket编程、TCP网络编程、UDP网络编程、Web编程开发等入手,可以全面了解Linux网络应用开发。
2.数据结构与算法数据
该结构和算法在嵌入式底层驱动、通信协议以及各类引擎开发中得到广泛应用。语言编译使用堆栈、哈希表和语法树。
操作系统使用队列、存储管理表、目录树;数据库系统使用线性表、多重链表、索引表进行数据管理等等,这些的掌握直接影响到程序的效率、简洁性、健壮性。
3.QT、DSP、FPGA
Linux没有自己的界面,学习QT编程可以创造出艺术化的图形用户界面所需要的所有功能,从而更好地实现人机交互控制。
如今用户对于图形图像的要求越来越高,需要利用DSP、FPGA技术来设计和开发更好的嵌入式视觉系统。
至于高级嵌入式工程师,暂时不用多说,急功近利不是好事,到了这个位置可以说已经是人生赢家了。
真正的学习过程就像一场漫长的修炼,其间必然会遇到各种各样的困难。
当然嵌入式工作需要更多的实践和经验的积累,相信只要你慢慢等待,你一定可以成为一名优秀的嵌入式工程师。
作为初学者,您推荐什么课程?
Bilibili上有很多资源,但是作为一个没有基础知识的人,C语言怎么办?
嗯,我只推荐一个,B站的鹏哥C语言。再加上翁凯老师。这是最好的决定。
数据结构和计算机网络知识对于驱动程序和应用程序来说都是必不可少的。
郝斌的视频
对于计算机网络,你可以看看小林编码的资料
至于其他书籍和资料。
推荐的学习路径。
入门:51+STM32
主要学习内容
中断、定时器、串口、NAND FLASH、网络控制器、液晶屏、触摸屏等的工作原理。
推荐学习资源
视频:野火、原子弹袭击
书籍:《野火》、《Atoms on Point》
学习技巧
如果以后要开发驱动,就应该把重点放在了解硬件知识上。买一块开发板,学会写例程,了解常见嵌入式外设的硬件工作原理,学会用C语言编程控制这些硬件。基本外设都要学会。不一定要会写,但必须了解硬件原理。
高级:ARM-A+Linux
这部分主要分为Linux应用程序开发和Linux驱动开发两个方向,下面我会分别对这两个方向进行讲解。
有了前面的 MCU 基础,上手 Linux 开发会更快。可以买一块 ARM-A 核心的开发板。ARM-A 和 stm32 很多地方都差不多,理解起来也不难。两者最大的区别就是开发环境,很多新手在搭建环境的时候,就对 Linux 开发望而却步。在学习 ARM-A 之前,可以先看《ARM 架构与编程》,然后再看魏老师的视频,理解起来会更快。基本上视频里提到的难点都在这里了。
应用程序开发
主要学习内容
Linux系统调用概念,多进程、多线程多任务开发,多任务同步互斥开发:互斥锁、信号量,网络数据通讯过程,TCP/IP协议,Socket编程,TCP网络编程,UDP网络编程,QT编程。
推荐学习资源
书籍:《Unix环境高级编程》、《Unix网络编程》、《Qt Creator快速入门》
视频:如果你还没看过这些视频,你可以在哔哩哔哩上搜索,找到播放量高的视频。
驱动程序开发
主要学习内容
Bootloader工作流程、UBOOT的编译、剪裁与移植、Linux内核的编译、剪裁与移植、根文件系统的构建、BootLoader、内核及根文件系统的烧写。
关键的驱动框架包括:字符设备驱动、块设备驱动、LCD设备驱动、触摸屏设备驱动、总线设备驱动模型、输入子系统模型等。
推荐学习资源
书籍:《Linux设备驱动开发详解》《Linux设备驱动》
视频:强力推荐魏东山老师!!
学习技巧
跟着视频一步步学习的时候,可能很多东西刚开始看的时候会看不懂,没关系,如果查了资料还是看不懂,可以先放一边,不要再深究了,等你深入内核之后,很多东西就会越来越深。
作为初学者,学习驱动开发主要关注驱动框架(例如input_attach_handler()是输入子系统模型中常用的函数,一开始我们只需要知道它是用来匹配dev设备和驱动软件的,暂时不需要知道这个函数内部是怎么实现的)。在有了一定的基础之后,可以深入到某一点,思考他们为什么这样写。
掌握:各种复杂驱动
一般来说,如果能通过自学达到第二阶段,就已经很不错了。比较复杂的驱动部分一般都是在工作中学习的。像Android驱动、音视频驱动、USB驱动、wifi、蓝牙协议、内核开发等都是比较深入的东西。随便挑一个内容深入学习一下,都能成为这方面的专家。
推荐学习资源
书籍:这个方向有很多,很多我都不太了解,这里推荐几本不错的内核书籍:《Linux内核设计与实现》、《深入理解LINUX内核》、《深入Linux内核架构》
视频:Bilibili搜索【Linux内核详解】
总结
在学习的过程中,我们应该抓住那些不变的东西,并考虑这些不变的内容是否会帮助我们将来掌握变化的东西。
无论学什么技术,都要学好这个技术的边界,对于嵌入式开发来说,汇编就是软件的边界。
我经常看到有人讨论嵌入式系统是否面临35年的危机,我不能说没有,但是可以说压力可能比互联网要小一些。
相比于互联网,嵌入式系统的技术更新没有那么快,如果你能在嵌入式系统某个领域进行深入研究,构建技术护城河,你的职业生涯可能会更长。
推荐一个github仓库,里面有几百本经典的嵌入式、计算机方面的书籍,可以star一下,下次搜索书籍:github书宝仓库,如果无法访问github,可以访问这个:gitee书宝仓库
相关问答
会51单片机,如何快速学习使用STM32单片机?...对于自学者来说,尤其是从51单片机转过来的自学者来说,习惯了51单片机操作寄存器配置,学习stm32固件库是比较不习惯和困难的,尤其是对于C语言的指针和结构体理...