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

作者: baseband112 (baseband)   2017-02-13 01:41:38
推 bluemkevin: RTL 組合電路的部分用 gate level 似乎沒必要, Tool 02/12 18:48
→ bluemkevin: 會幫你化簡 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
面積又省一堆, 不過沒有人看的懂我想幹嘛=_=,
可是我覺得這明明就很簡單的數學規則而已
作者: bluemkevin (WHO WHO)   2016-02-12 18:48:00
RTL 組合電路的部分用 gate level 似乎沒必要, Tool會幫你化簡
作者: a000000000 (九個零喔)   2017-02-13 01:51:00
你應該跳槽
作者: baseband112 (baseband)   2017-02-13 01:57:00
跳巢喔, 還是算了吧~ 反正寫Code自己爽,公司太多要面對人的問題, 我還是自己接接案子就好
作者: s860134 (s860134)   2017-02-13 02:30:00
寫註解吧 技術好要讓別人看得懂人家才知道你是高手阿XD
作者: baseband112 (baseband)   2017-02-13 02:36:00
=_=我不是高手的說, 我只是覺得這種Code看起來賞心悅目而已XD, 很短很漂亮而且有時候寫註解別人也看不懂因為有些想法就是要轉個彎我很討厭看到那種明明幾個算式可以寫完的RTL結果寫了一堆Behavior code可是其實很多人喜歡看哪種落落長的Code, 搞不懂
作者: xam (聽說)   2017-02-13 03:15:00
那他電你的理由是什麼?
作者: s860134 (s860134)   2017-02-13 03:16:00
我猜是可讀性吧.
作者: flyawayla (想飛)   2017-02-13 03:24:00
這種居然電..... 可以跳槽了 XDDDDDD
作者: kuohungting (肖查BO)   2017-02-13 03:45:00
這不是新人面試的基本題嗎...呃這主管...
作者: danlove (danlove)   2017-02-13 07:37:00
沒看過你老闆的code但你這種blocking和nonblockong結合在一起的behavior code也會被我電翻因為很有可能RTL simulation和gate level或FPGA行為不一致
作者: aowen (...)   2017-02-13 08:07:00
至少文章裡面的語法是該電沒錯…
作者: tkhan (腦殘綠吱吱)   2017-02-13 08:30:00
慧心一笑..^_^..
作者: dakkk (我是牛我反芻)   2017-02-13 08:57:00
少寫 assign其實A 沒什問題 B的合成 可能會拉很遠的線 又沒ff同步 你的timing會很差
作者: duffrose (膩不藥罐)   2017-02-13 12:22:00
寫A<={A[5],A[4],A[7],A[6],A[1],A[0],A[3],A[2]} wo B
作者: bluemkevin (WHO WHO)   2017-02-13 12:38:00
這 Code 很容易理解阿 而且很常看見
作者: dslite (呼呼)   2017-02-13 12:40:00
combination logic需要自己搞嗎
作者: bluemkevin (WHO WHO)   2017-02-13 12:41:00
baseband大只是舉例 細節就不要探究了
作者: chrispherd (WTF)   2017-02-13 13:14:00
馬的這我一定電啊 你怎麼不想想看這東西合出來會變怎麼樣 你以為在寫C喔
作者: mos888tw (none)   2017-02-13 13:20:00
我以前寫code原則絕對不是越短越好 可讀性很重要 過陣子要mantain也許就忘記當初的想法了啦 建議還是寫成九成九的人都看得懂的style
作者: tiencheng (第一支舞)   2017-02-13 13:21:00
滿招損,謙受益. 在職場不要隨便開口閉口電來電去的人外有人天外有天, 態度謙遜對自己專業領域成長有幫助
作者: bluemkevin (WHO WHO)   2017-02-13 15:07:00
Data shift 這樣寫還好啦 程式碼其實會影響模擬軟體編譯的速度其實不少人會錯估合成軟體合出來的東西
作者: uxijgil (PoLo)   2017-02-13 18:26:00
想補充有時候多加FF, 是為了速度切pipeline另外, 有時候寫得更落落長, 是為了parameterize, 通用型
作者: stkeiko (笨笨狗)   2017-02-13 18:31:00
可讀性真的很重要..對後面的接手的人來說...
作者: cancboy (:p)   2017-02-13 21:50:00
你以為你同事寫不出來嗎?
作者: ps0411 (ps0411)   2017-02-13 21:52:00
原PO討電,救不了你
作者: laladeer (laladeer)   2017-02-13 22:33:00
data shift 哈哈哈哈
作者: ProTrader (沒有暱稱)   2017-02-14 14:11:00
被電是因為code寫得漂亮 但硬體不一定能實作嗎??你弄這種東西有打算去高頻交易嗎? 搶微秒拼奈秒
作者: baseband112 (baseband)   2017-02-15 23:24:00
被電是因為, 這Code邏輯漂亮, 硬體省可是主管認為會變成比較不好懂, 因為基本邏輯完全不不同
作者: ProTrader (沒有暱稱)   2017-02-16 14:14:00
我能認同老闆前面也很多人說 可讀性與可維護性 我有感

Links booklink

Contact Us: admin [ a t ] ucptt.com