Re: [討論] 好,台灣碼盲,碼農低薪,然後呢?
: 至於所謂的 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://www.ptt.cc/bbs/Soft_Job/M.1577791982.A.CA8.html
推
12/31 19:53,
4年前
, 1F
12/31 19:53, 1F
推
12/31 20:05,
4年前
, 2F
12/31 20:05, 2F
推
12/31 20:08,
4年前
, 3F
12/31 20:08, 3F
→
12/31 20:09,
4年前
, 4F
12/31 20:09, 4F
推
12/31 20:15,
4年前
, 5F
12/31 20:15, 5F
推
12/31 20:44,
4年前
, 6F
12/31 20:44, 6F
推
12/31 21:16,
4年前
, 7F
12/31 21:16, 7F
→
12/31 21:32,
4年前
, 8F
12/31 21:32, 8F
推
12/31 21:33,
4年前
, 9F
12/31 21:33, 9F
推
12/31 21:34,
4年前
, 10F
12/31 21:34, 10F
推
12/31 21:44,
4年前
, 11F
12/31 21:44, 11F
→
12/31 22:13,
4年前
, 12F
12/31 22:13, 12F
→
12/31 22:13,
4年前
, 13F
12/31 22:13, 13F
→
12/31 22:13,
4年前
, 14F
12/31 22:13, 14F
→
12/31 22:38,
4年前
, 15F
12/31 22:38, 15F
推
12/31 23:11,
4年前
, 16F
12/31 23:11, 16F
推
01/01 00:09,
5年前
, 17F
01/01 00:09, 17F
推
01/01 08:07,
5年前
, 18F
01/01 08:07, 18F
→
01/01 08:50,
5年前
, 19F
01/01 08:50, 19F
→
01/01 08:50,
5年前
, 20F
01/01 08:50, 20F
→
01/01 08:53,
5年前
, 21F
01/01 08:53, 21F
→
01/01 08:57,
5年前
, 22F
01/01 08:57, 22F
推
01/01 09:08,
5年前
, 23F
01/01 09:08, 23F
→
01/01 09:08,
5年前
, 24F
01/01 09:08, 24F
→
01/01 09:16,
5年前
, 25F
01/01 09:16, 25F
噓
01/01 09:38,
5年前
, 26F
01/01 09:38, 26F
→
01/01 09:38,
5年前
, 27F
01/01 09:38, 27F
→
01/01 09:38,
5年前
, 28F
01/01 09:38, 28F
→
01/01 09:40,
5年前
, 29F
01/01 09:40, 29F
→
01/01 09:41,
5年前
, 30F
01/01 09:41, 30F
→
01/01 09:41,
5年前
, 31F
01/01 09:41, 31F
→
01/01 09:43,
5年前
, 32F
01/01 09:43, 32F
→
01/01 09:43,
5年前
, 33F
01/01 09:43, 33F
→
01/01 09:44,
5年前
, 34F
01/01 09:44, 34F
→
01/01 09:44,
5年前
, 35F
01/01 09:44, 35F
→
01/01 09:45,
5年前
, 36F
01/01 09:45, 36F
→
01/01 09:45,
5年前
, 37F
01/01 09:45, 37F
→
01/01 09:45,
5年前
, 38F
01/01 09:45, 38F
→
01/01 09:46,
5年前
, 39F
01/01 09:46, 39F
還有 22 則推文
→
01/01 17:33,
5年前
, 62F
01/01 17:33, 62F
→
01/01 18:32,
5年前
, 63F
01/01 18:32, 63F
→
01/01 18:32,
5年前
, 64F
01/01 18:32, 64F
→
01/01 18:32,
5年前
, 65F
01/01 18:32, 65F
→
01/01 18:33,
5年前
, 66F
01/01 18:33, 66F
→
01/01 18:33,
5年前
, 67F
01/01 18:33, 67F
→
01/01 19:23,
5年前
, 68F
01/01 19:23, 68F
→
01/01 19:24,
5年前
, 69F
01/01 19:24, 69F
→
01/01 19:25,
5年前
, 70F
01/01 19:25, 70F
→
01/01 19:28,
5年前
, 71F
01/01 19:28, 71F
→
01/01 19:36,
5年前
, 72F
01/01 19:36, 72F
推
01/01 19:37,
5年前
, 73F
01/01 19:37, 73F
→
01/01 19:39,
5年前
, 74F
01/01 19:39, 74F
→
01/01 19:40,
5年前
, 75F
01/01 19:40, 75F
→
01/01 19:41,
5年前
, 76F
01/01 19:41, 76F
→
01/01 19:44,
5年前
, 77F
01/01 19:44, 77F
→
01/01 19:47,
5年前
, 78F
01/01 19:47, 78F
→
01/01 19:48,
5年前
, 79F
01/01 19:48, 79F
→
01/01 19:48,
5年前
, 80F
01/01 19:48, 80F
→
01/01 20:10,
5年前
, 81F
01/01 20:10, 81F
→
01/01 20:10,
5年前
, 82F
01/01 20:10, 82F
→
01/01 20:13,
5年前
, 83F
01/01 20:13, 83F
→
01/01 20:13,
5年前
, 84F
01/01 20:13, 84F
→
01/01 20:16,
5年前
, 85F
01/01 20:16, 85F
推
01/02 07:55,
5年前
, 86F
01/02 07:55, 86F
→
01/02 09:20,
5年前
, 87F
01/02 09:20, 87F
→
01/02 09:21,
5年前
, 88F
01/02 09:21, 88F
推
01/04 20:04,
5年前
, 89F
01/04 20:04, 89F
→
01/04 20:04,
5年前
, 90F
01/04 20:04, 90F
→
01/04 20:04,
5年前
, 91F
01/04 20:04, 91F
→
01/04 20:04,
5年前
, 92F
01/04 20:04, 92F
→
01/04 20:04,
5年前
, 93F
01/04 20:04, 93F
→
01/04 20:04,
5年前
, 94F
01/04 20:04, 94F
→
01/04 20:04,
5年前
, 95F
01/04 20:04, 95F
→
01/04 20:04,
5年前
, 96F
01/04 20:04, 96F
→
01/04 20:05,
5年前
, 97F
01/04 20:05, 97F
→
01/04 20:05,
5年前
, 98F
01/04 20:05, 98F
推
01/05 13:36,
5年前
, 99F
01/05 13:36, 99F
推
01/11 11:23,
5年前
, 100F
01/11 11:23, 100F
推
01/16 10:24,
5年前
, 101F
01/16 10:24, 101F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 52 之 53 篇):