Re: [請益] 影像IC設計疑問

看板Tech_Job作者 (baseband)時間7年前 (2017/02/13 01:41), 7年前編輯推噓12(15334)
留言52則, 22人參與, 最新討論串7/7 (看更多)

02/12 18:48,
RTL 組合電路的部分用 gate level 似乎沒必要, Tool
02/12 18:48

02/12 18:48,
會幫你化簡
02/12 18:48
其實我覺得這話也不是這麼講, tool好像是在Flip Flop之間化簡 combination電路的能力很強, 甚至我嘗試過寫到人都覺得長得不一樣的code, netlist 就是硬生生的一樣, 讓我覺得千萬不要跟tool pk化簡, 因為你化不贏他 但是呢, 如果是架構上整個 FF可以少用的, 其實合成出來的就會天差地遠了(自己經驗) 以前好像曾經有個同事想要寫某段電路, 寫的落落長, 好像要做某種Bit shift還啥鬼的, 被我看穿意圖 他的Behavior code寫的落落長, 用掉一堆 Flip Flop 後來我把他code改成類似以下這種風格 A = {10, 01, 00, 11} B = {A[3:0], A[7:4]} A <= {B[1:0}, B[3:2], B[5:4], B[7:6]} 結果主管就把我電翻了XDDDD, 明明我的Code是對的, 而且Flip Flop 少三倍, 而且這Code又短又精簡很好呀XDD 面積又省一堆, 不過沒有人看的懂我想幹嘛=_=, 可是我覺得這明明就很簡單的數學規則而已 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.100.129 ※ 文章網址: https://www.ptt.cc/bbs/Tech_Job/M.1486921300.A.EA1.html ※ 編輯: baseband112 (36.226.100.129), 02/13/2017 01:43:17

02/13 01:51, , 1F
你應該跳槽
02/13 01:51, 1F

02/13 01:57, , 2F
跳巢喔, 還是算了吧~ 反正寫Code自己爽,
02/13 01:57, 2F

02/13 01:57, , 3F
公司太多要面對人的問題, 我還是自己接接案子就好
02/13 01:57, 3F

02/13 02:30, , 4F
寫註解吧 技術好要讓別人看得懂人家才知道你是高手阿XD
02/13 02:30, 4F

02/13 02:36, , 5F
=_=我不是高手的說, 我只是覺得這種Code看起來賞心
02/13 02:36, 5F

02/13 02:36, , 6F
悅目而已XD, 很短很漂亮
02/13 02:36, 6F

02/13 02:37, , 7F
而且有時候寫註解別人也看不懂
02/13 02:37, 7F

02/13 02:38, , 8F
因為有些想法就是要轉個彎
02/13 02:38, 8F

02/13 02:39, , 9F
我很討厭看到那種明明幾個算式可以寫完的RTL
02/13 02:39, 9F

02/13 02:39, , 10F
結果寫了一堆Behavior code
02/13 02:39, 10F

02/13 02:41, , 11F
可是其實很多人喜歡看哪種落落長的Code, 搞不懂
02/13 02:41, 11F

02/13 03:15, , 12F
那他電你的理由是什麼?
02/13 03:15, 12F

02/13 03:16, , 13F
我猜是可讀性吧.
02/13 03:16, 13F

02/13 03:24, , 14F
這種居然電..... 可以跳槽了 XDDDDDD
02/13 03:24, 14F

02/13 03:45, , 15F
這不是新人面試的基本題嗎...呃這主管...
02/13 03:45, 15F

02/13 07:37, , 16F
沒看過你老闆的code
02/13 07:37, 16F

02/13 07:38, , 17F
但你這種blocking和nonblockong結合在一起的behavior cod
02/13 07:38, 17F

02/13 07:38, , 18F
e
02/13 07:38, 18F

02/13 07:40, , 19F
也會被我電翻
02/13 07:40, 19F

02/13 07:40, , 20F
因為很有可能RTL simulation和gate level或FPGA行為不一
02/13 07:40, 20F

02/13 07:40, , 21F
02/13 07:40, 21F

02/13 08:07, , 22F
至少文章裡面的語法是該電沒錯…
02/13 08:07, 22F

02/13 08:30, , 23F
慧心一笑..^_^..
02/13 08:30, 23F

02/13 08:57, , 24F
少寫 assign
02/13 08:57, 24F

02/13 08:58, , 25F
其實A 沒什問題 B的合成 可能會拉很遠的線 又沒ff同步 你
02/13 08:58, 25F

02/13 08:58, , 26F
的timing會很差
02/13 08:58, 26F

02/13 12:22, , 27F
寫A<={A[5],A[4],A[7],A[6],A[1],A[0],A[3],A[2]} wo B
02/13 12:22, 27F

02/13 12:38, , 28F
這 Code 很容易理解阿 而且很常看見
02/13 12:38, 28F

02/13 12:40, , 29F
combination logic需要自己搞嗎
02/13 12:40, 29F

02/13 12:41, , 30F
baseband大只是舉例 細節就不要探究了
02/13 12:41, 30F

02/13 13:14, , 31F
馬的這我一定電啊 你怎麼不想想看這東西合出來會變怎
02/13 13:14, 31F

02/13 13:14, , 32F
麼樣 你以為在寫C喔
02/13 13:14, 32F

02/13 13:20, , 33F
我以前寫code原則絕對不是越短越好 可讀性很重要 過陣子
02/13 13:20, 33F

02/13 13:20, , 34F
要mantain也許就忘記當初的想法了啦 建議還是寫成九成九
02/13 13:20, 34F

02/13 13:20, , 35F
的人都看得懂的style
02/13 13:20, 35F

02/13 13:21, , 36F
滿招損,謙受益. 在職場不要隨便開口閉口電來電去的
02/13 13:21, 36F

02/13 13:22, , 37F
人外有人天外有天, 態度謙遜對自己專業領域成長有幫助
02/13 13:22, 37F

02/13 15:07, , 38F
Data shift 這樣寫還好啦 程式碼其實會影響模擬軟體編
02/13 15:07, 38F

02/13 15:07, , 39F
譯的速度
02/13 15:07, 39F

02/13 15:09, , 40F
其實不少人會錯估合成軟體合出來的東西
02/13 15:09, 40F

02/13 18:26, , 41F
想補充有時候多加FF, 是為了速度切pipeline
02/13 18:26, 41F

02/13 18:26, , 42F
另外, 有時候寫得更落落長, 是為了parameterize, 通用型
02/13 18:26, 42F

02/13 18:31, , 43F
可讀性真的很重要..對後面的接手的人來說...
02/13 18:31, 43F

02/13 21:50, , 44F
你以為你同事寫不出來嗎?
02/13 21:50, 44F

02/13 21:52, , 45F
原PO討電,救不了你
02/13 21:52, 45F

02/13 22:33, , 46F
data shift 哈哈哈哈
02/13 22:33, 46F

02/14 14:11, , 47F
被電是因為code寫得漂亮 但硬體不一定能實作嗎??
02/14 14:11, 47F

02/14 14:13, , 48F
你弄這種東西有打算去高頻交易嗎? 搶微秒拼奈秒
02/14 14:13, 48F

02/15 23:24, , 49F
被電是因為, 這Code邏輯漂亮, 硬體省
02/15 23:24, 49F

02/15 23:25, , 50F
可是主管認為會變成比較不好懂, 因為基本邏輯完全不
02/15 23:25, 50F

02/15 23:25, , 51F
不同
02/15 23:25, 51F

02/16 14:14, , 52F
我能認同老闆前面也很多人說 可讀性與可維護性 我有感
02/16 14:14, 52F
文章代碼(AID): #1Oe9vKwX (Tech_Job)
討論串 (同標題文章)
文章代碼(AID): #1Oe9vKwX (Tech_Job)