作者snaketsai (さいでんし)
看板Soft_Job
标题Re: [讨论] 好,台湾码盲,码农低薪,然後呢?
时间Tue Dec 31 19:32:54 2019
: 至於所谓的 open source 让码农容易跳槽,姑且不论这是不是事实,但获得
: 这种「能够自由选择主人的权利」,这算是什麽伟大的成就...
: 更何况,个人手上没有工具,阻碍了谁进入硬体业了吗?他们不容易跳槽?
: 没办法扩大产业大饼?拜托到 Tech_Job 多看看吧,哪有这回事啊,他们到
: 这几年才在搞 open hardware, 但也不是免费的。
很多年前拜读过小明大大的很多事蹟,以及在ptt的文章
刚好近期在小IC公司上班
年底请了弹休比较有时间胡思乱想、开始有些感触
所以想来抛砖引玉看要不要大家来开讲
本文依旧以泛CS领域的视角来切入
其中的话题主轴是这一两年中,有个年纪相对轻、却有点话题性的CPU架构
它叫做:「RISC-V」
一提到这个,我知道各位一定会有很多想法出现
其中一些关键字,如「贸易战」、「自主矽智财」.....等等算是如影随形
也有很多非技术考量、成本层面的有趣话题可以聊
但是既然今天在Soft_Job上面,本文还是聚焦在工程技术,与成本层面来探讨
并且替小明大大的「开源灭产业」话题做一个延续
RISC-V大张旗鼓的一个卖点就是CPU ISA的开放,
实做它的指令集可以不用专利金
tapeout再多颗,RISC-V基金会都没钱可抽
也可以使用port好又开源免钱的SW stack,e.g. toolchain、OS、firmware、
bootloader......
然而在以前
CPU设计并不是一件简单的事情,可说有天险阻拦
各位可能都在大学修过计算机组织/架构
写过verilog/VHDL、刻过一颗很小很小的MIPS(-subset)处理器
但是我想应该不会有人觉得修完之後就可以爆打MIPS、ARM
多数人的心得普遍会是:干,我不想走硬体
另外一个很大的限制是,设计CPU时要用的FPGA,其toolchain与硬体往往
都是天价商业软体与硬体
但这些造就知识与资源寡占的高墙,正在慢慢地倾颓
我个人觉得,这会是小明大大所提及,中小套件软体业被开源前浪灭顶後;
二三线、小型MCU IC设计公司,被RISC-V带来的开源後浪卷走的开端
因为现在的开发比真的以前容易非常、非常多
如果你预算只够买一块板子就要能够开发,
- Lattice的ECP5-Versa只要台币七千多块[1]
- 从合成、布局绕线到产生bitstream和烧录,
都有完全开放原始码工具链[2]
- 合上去的那颗SoC,peripheral是用Python写的、核心CPU是用Scala写的
而且,他可以跑一个完整功能的Linux[3]
这在过去是很难以想像的一个局面
你不再需要一张十来万的板子,
你不再需要付费、授权的EDA工具,
你不再需要懂verilog、VHDL等等硬体描述语言
你只需要余额有一万块的visa金融卡,
git clone、make
然後你就搭建好了一个可以进行RISC-V + Linux的软硬体整合开发环境
而且我真的看到有小公司从Cotex-M 0/1/3跳船去用上面这套组合
有没有缺点?当然是有
- 那颗RISC-V它的A extension(原子操作)没做完。
但是最重要的LR/SC做了,其他Atomic Memory Instrucion可以模拟
- 开源peripheral效能很差。
但是够用了,而且他有PCIe、Ethernet、SD卡、framebuffer
还带Linux driver port,
有些二三线CPU IP公司送的搞不好还没有这麽完整
- Wishbone是个很过时的bus设计,时脉拉不上去。
会换的真的不care这个
最重要的就是那句
会换的真的不care。
我们都希望客户能在意、善用那些增强的功能,然後掏出白花花的钱;
但是客户也是很精的,当他们发现免费午餐其实不难吃(或着变得可以吃)时,
就是市场掉入红海大洗牌的时候了。
[1]
http://www.latticesemi.com/Products/DevelopmentBoardsAndKits/ECP5VersaDevelopmentKit.aspx
[2]
https://symbiflow.github.io/
[3]
https://github.com/litex-hub/linux-on-litex-vexriscv
==为让大家有共同讨论的基础背景,尾巴来点科普,熟悉的跳过吧==
RISC-V本质上只是个ISA (指令集架构) 的规范,由基金会统筹主导
规范上分两部份:
一部分是非特权指令集方面,其中主要包含——
* 必要的 整数(I)指令
* 可选的 乘除法(M)、短指令(C)、原子性操作(A)、单/双精度浮点(F/D)
- 近期才(吵出)来的记忆体/快取同步问题的Zifencei
另外一方面则是因为有作业系统的存在,所需要的特权指令集
规范了如:
虚拟记忆体的规则,转换到实体位置的转换演算法
有哪些状态暂存器、例外处理的机制......等等
任何推进规范里面的东西,都必须没有专利阻挡、
或移交相关专利给RISC-V foundation
以便让实做出RISC-V规范相容的处理器,没有任何法律相关的问题
然而
RISC-V基金会尽量不规范平台相依的问题。
例如,TLB miss的refill要打exception给OS/firmware处理;
还是给硬体page table walker去回填?
你cache要VIVT、VIPT还是PIPT?
RISC-V基金会:「这些都平台自己决定,我不管」
也因此有很多东西其实是de facto的实做决定
像是诞生出RISC-V基金会的柏克莱大学架构实验室(UCB-BAR),
有开放其实做,Rocket Chip,在TLB refill上面就是硬体做掉、
在L1$上面用VIPT
结尾的takeaway:
RISC-V开源是开源在规范上,实做有开源也有商业
有很多东西其实在实做上会有差异,并且会穿透到软体的porting上面
因为开发成本与难度大幅降低,没有特色的可能会被洗出场外
--
Linux is the bone of my world.
Kernel is mybody, and initramfs is myblood,
have created over a thousand Distros.
Unknown to impossibility.
Nor known to limitation.
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.226.177.2 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1577791982.A.CA8.html
1F:推 Eos: 写得好 但这版的版友应该偏向更软 不知会有多少共鸣 12/31 19:53
2F:推 atpx: U质好文, 我纯软但也看得懂一点点, 不推不行 12/31 20:05
3F:推 Neistpoint: 开源是好事, RISC-V和免费是两件事 12/31 20:08
4F:→ Neistpoint: 以後买有RISCV的晶片记得问是谁做的 12/31 20:09
5F:推 easyman: 请问一下,Andes有赚头吗?靠卖extension?卖service? 12/31 20:15
6F:推 decheng: 推~ 请问大大为何超人公司卖的板子这麽贵呀~ 有人会买吗? 12/31 20:44
7F:推 oopFoo: 好文,大推。RISCV就像当年的Linux,越来越多人汇集在这 12/31 21:16
8F:→ MOONY135: 我给你个M假装我看的懂 12/31 21:32
9F:推 Eric0605: 推 12/31 21:33
10F:推 freef1y3: 该跳槽SiFive了吗 12/31 21:34
11F:推 sxy67230: 我还是赞成开源,开源其实就是提高产业的竞争力 12/31 21:44
12F:→ bcew: 我觉得就tapeout ic需要的人力物力,arm或其他处理器的授权 12/31 22:13
13F:→ bcew: 金真的不贵,也想不出需要risc-v的新创运用,所以应该只是在 12/31 22:13
14F:→ bcew: 学界发展而已,硬体要更新的成本太高,所以态度会比较保守。 12/31 22:13
15F:→ hass231470: 这版以纯软工为主 少Product Mgr 12/31 22:38
16F:推 steven11329: 或许rpi5可以考虑那这个来试水温 12/31 23:11
17F:推 Handsomeshen: 写verilog 真的都写到很干QQ 01/01 00:09
18F:推 bab7171: 推 简单易懂 01/01 08:07
19F:→ superpandal: 也就是这种单位才开源不手软 良心 个人单位还是算了 01/01 08:50
20F:→ superpandal: 吧 先有资源再开源才是坐大正途 01/01 08:50
21F:→ superpandal: 全民开源 资源肯定最後会落到少数人手里 01/01 08:53
22F:→ superpandal: 现今有那麽好协议的开源不多了 hahaha 01/01 08:57
23F:推 GGFACE: 嗯嗯跟我想的一样 01/01 09:08
24F:→ superpandal: 开源很多时候是好事 但动不动就叫人开源 虎狼之心 01/01 09:08
25F:→ superpandal: 社会工程派工程师在这社会实在占了太大的便宜 01/01 09:16
26F:嘘 u5710587: 拜托 数位ic工程师根本不算什麽 你会写verilog就可以 01/01 09:38
27F:→ u5710587: 混饭吃一辈子了 这跟软体工程师有什麽两样 没价值 01/01 09:38
28F:→ u5710587: 需要学什麽东西吗 噗哧 讲的好像硬体开源你就会有什麽 01/01 09:38
29F:→ u5710587: 危机一样 数位ic工程师一直以来就跟软体工程师是免洗 01/01 09:40
30F:→ u5710587: 的阿 有改变过吗 拜托 你今天开源阿 一些关键零组件 01/01 09:41
31F:→ u5710587: 比方说RF元件或者是类比元件还是没办法开源 这方面 01/01 09:41
32F:→ u5710587: 需要的专业太多了 那都是需要类比ic工程师一手一手 01/01 09:43
33F:→ u5710587: 去打造出来 这才叫有价值的产业 数位ic本来就没有 01/01 09:43
34F:→ u5710587: 进入门槛了 讲的好像你多有专业价值一样 01/01 09:44
35F:→ u5710587: 跟你说啦 数位ic是资工系都可以来干的工作 01/01 09:44
36F:→ u5710587: 写写verilog一狗票资工的来干都很easy啦 01/01 09:45
37F:→ u5710587: 搞不好都可以屌打你电机本科出身的 01/01 09:45
38F:→ u5710587: 电子学学不好只能干数位ic工程师 还在吹自己有什麽专业 01/01 09:45
39F:→ u5710587: 会什麽红海 拜托 本来就红海 资工都可以来抢你的工作 01/01 09:46
40F:→ superpandal: 楼上喷楼主? 凭良心而论有无开源当然有差 你可以叫 01/01 09:49
41F:→ superpandal: 大厂不要授权 hahaha 01/01 09:50
42F:→ superpandal: 看来已经有人想要自干架构了 支持 01/01 09:51
43F:→ superpandal: 楼主电机? 我爬一下文 01/01 09:55
44F:推 final01: 说真的你老是说小公司~其实risv-v还要要大公司来玩~ 01/01 09:56
45F:→ final01: 不过现在基本大公司都有部门再用这是真的 01/01 09:57
46F:→ superpandal: 看来是了 不过既然开源了不管大小公司都可以弄了 这 01/01 10:03
47F:→ superpandal: 没毛病 01/01 10:03
48F:→ superpandal: 开源後他人修改可以闭源是利多 个人单位开源是傻 01/01 10:22
49F:→ alongalone: 开源都有个问题. it is free if your time is free .. 01/01 10:53
50F:→ alongalone: 有问题找人支援的时候而自己又修不动的时候?怎麽办 01/01 10:53
51F:→ superpandal: 那麽多协议你可以找一个适合你的 没时间用闭源让原厂 01/01 11:07
52F:→ superpandal: 帮你 或者靠迭代生存的开源原厂 01/01 11:08
53F:→ superpandal: 你不想自己来那只能资助别人 靠自己来想壮大就得考虑 01/01 11:09
54F:→ superpandal: 是否闭源问题 01/01 11:09
55F:→ superpandal: 原本是开源但可让人选择开源还是闭源基本上是无私的 01/01 11:17
56F:→ superpandal: 不论哪种协议肯定是计较过才会选 没有蠢人不是吗 倒 01/01 11:26
57F:→ superpandal: 是一些人把别人当蠢人 01/01 11:26
58F:→ labbat: 弱若问x86 compatible 很多现成的工具软体没risc-v编译 01/01 13:20
59F:推 expiate: 笑死,写verilog跟写C,Java完全不一样好不好。某u真是丢 01/01 14:48
60F:→ expiate: 人现眼加好笑。之前有个资工写verilog当c写被当到死 01/01 14:49
61F:→ LinuxKernel: 这边前端後端板啦 建议po去隔壁板 01/01 15:39
62F:→ bluesapphire: 身边很多东西其实都变成 risc v 了.. 01/01 17:33
63F:→ codehard: 稳定才是重点 拿开源软体没问题 但是有奇奇怪怪的Bug谁 01/01 18:32
64F:→ codehard: 要解 光重制状况就搞死人了 运气好有大神解 运气不好永 01/01 18:32
65F:→ codehard: 远也找不到人解 那东西要怎麽卖 做生意要依靠神迹这生意 01/01 18:32
66F:→ codehard: 也别做了 花点小钱给人赚 他会负责搞定 也不用自己养工 01/01 18:33
67F:→ codehard: 程师 有什麽不好 省小钱花大钱 01/01 18:33
68F:→ superpandal: 我用的都很稳定阿 hahaha java有开源闭源 php开源 01/01 19:23
69F:→ superpandal: python开源 go开源 http server众多都开源 01/01 19:24
70F:→ superpandal: 开源其实已经深入生活了 你的应用不开源我觉得没问题 01/01 19:25
71F:→ superpandal: 基本上息息相关了 给人可以 签约要签好 01/01 19:28
72F:→ superpandal: 再整整 之後就可以自动了 hahaha 01/01 19:36
73F:推 twicm: 码农投入RiscV 相关供应链链主要是看你能提供多少价值 01/01 19:37
74F:→ twicm: 用的人多机会也多是必然的, RiscV这边开源的层面有很多种 01/01 19:39
75F:→ twicm: 用ISA不用钱, 这对有能力自己做CPU但是舍不得架构授权的人 01/01 19:40
76F:→ twicm: 是省了一笔钱, 不过这块跟码农好像无关 01/01 19:41
77F:→ twicm: 再来是有人开源它的微架构, 这跟码农有关吗? 好像也没有 01/01 19:44
78F:→ twicm: 码农的确是多了一些工作机会, 但是仔细想想, 你跟在原来的 01/01 19:47
79F:→ twicm: 生态系统工作以何不同? 可以创造的价值有变多吗? 01/01 19:48
80F:→ twicm: 要说的出来才有机会发大财 01/01 19:48
81F:→ superpandal: 码农? hahaha 真新颖 投入riscv都变成码农了 一堆大 01/01 20:10
82F:→ superpandal: 公司要哭搂 01/01 20:10
83F:→ superpandal: 有何不同? 当然是高效的多 自动化不高效就没存在价 01/01 20:13
84F:→ superpandal: 值 01/01 20:13
85F:→ superpandal: 价值还不只是创造 这样想感觉还是在以前的思维 01/01 20:16
86F:推 brianhsu: 觉得 RISCV 是好事乐见其成,感觉很有趣 01/02 07:55
87F:→ InvincibleK: 鬼岛惯老板:我不乐见!任何员工的东西都是公司的私有 01/02 09:20
88F:→ InvincibleK: 财产,到底谁准许码农奴工们这样做事的?全都吉起来! 01/02 09:21
89F:推 danny0108: 某楼u开头的一定没写过「堪用」的RTL code才会说数位i 01/04 20:04
90F:→ danny0108: c设计没有专业门槛,你今天要用硬体实作出一个演算法 01/04 20:04
91F:→ danny0108: ,但是根本连能够合成的code都不会写,试问你这到底哪 01/04 20:04
92F:→ danny0108: 里跟软体一样?完全就是不同的考量,即便你写的RTL co 01/04 20:04
93F:→ danny0108: de能够合成,那再来呢?timing够快吗?area够小吗?有 01/04 20:04
94F:→ danny0108: 办法做low power吗?再来就是各种数位讯号处理架构设 01/04 20:04
95F:→ danny0108: 计或是数位通讯架构设计的知识,我就问你资工系如果完 01/04 20:04
96F:→ danny0108: 全没碰过,是能写出什麽干东西? 01/04 20:04
97F:→ danny0108: 补充一下,没有要战系,纯粹阐述不同领域的人应该互相 01/04 20:05
98F:→ danny0108: 尊重,不需要互相轻视对方的专业 01/04 20:05
99F:推 b160160: 推 01/05 13:36
100F:推 cucugo: 推d大 01/11 11:23
101F:推 KAOKAOKAO: A没准备好的Linux 你敢用吗...... 01/16 10:24