2014年12月5日 星期五

成敗論因由

從主流輿論成型的構成因子看成敗:

元素:
主觀,客觀,真真假假,虛虛實實的種種元素是構成所有事物的基本要件:
核心思想價值,食安風暴,經濟數據,房價飆漲,社會公理正義不張,政治人物言行脫序,虛實竊聽門,偽旗事件(趙衍慶故事),服貿爭議,藍綠對立,族群議題,形象,背景,情感,理性等等都是議題元素。
長期負面元素的累積,自然形成共識。

形式:
種種元素透過思想組合轉化出各種表現形式,
 文字,kuso影片,音樂,漫畫,照片等等。
 
傳播形式則隨時代科技變遷發展成不同效率的方式。
電視,廣播,報紙,光碟,演講,辯論,郵件,網站部落,網路行銷,去中心化,UGC(User Generated Content),社群感染。
 
而真假比例,虛實交錯,主客觀情緒,網民口味,都需要精準拿捏才會有一個可常可遠,感染快速的表現形式。
 
瞭解形式上的差異也可看出這次的世代差異,彷彿資訊戰跨越時空在較量。
 
動力:
驅動力來自人力,物力,金錢。
傳統方式依靠集中統御,耗時,耗力,耗錢。
網路時代則是去中心化,快速,成本低,效率佳。
 
目的:
公民覺醒,伸張正義,輿論操控,新奇有趣,滿足特定利益,社會實驗,顛覆革命,職業任務,呼群保義,實現理想等等不同目的。不滿的發洩是共同的情緒
 
對立雙方都想攻佔道德制高點,上風者高舉公義大旗,下風者,營造弱者形象。都計算著保留在正面交鋒時的輿論優勢。
 
主客虛實的資訊扭曲打包在海量資料中,雖不能說以假亂真,但用加油添醋的資訊取得推波助瀾的優勢也不是沒有。
 
不同的人會依不同角度擷取需要的因素來分析。不見得所有問題都有解答。
關心陰謀論的人會從偽旗事件切入思考。
熱衷兵法策略的人聚焦在虛實的竊聽門鬧劇。
研究網路行銷的人會從趙衍慶故事的社會實驗始末影響,探討網路感染的力量。
追求公義的人相信的是公民力量的覺醒。
 
只從偽旗(false flag)事件,陰謀,策略來總結所有因素,是見樹不見林。
而只相信是非分明,眼見為憑,則容易錯過看不見的煙硝。
真相就像是俄羅斯娃娃,看你能取出幾層來看。
正義思辨在多元社會裡並不只一條路線。
 
在大數據資料不停衝擊愛恨分明的熱血支持者下,是非公義彷彿是清晰可辨,而多元社會裡對於岐見尊重的理性討論只剩模糊的身影。
 
 

2014年9月10日 星期三

synthesis flow

synthesis flow

Verilog/rtl/ddc/db read in

Design Environment
   synthesis env 變數設定
       search_path
       target_library (standard cell library)
       link_library (standard cell library, macro lib , sram lib, design ware library, wireload model)
       global synthesis var (icg type/)
  operating condtion setting
  donot use cell
  I/O port attributes
      􀂃 drive strength of input port
      􀂃 capacitive loading of output port

Design Constraints
   Clock signal specification
     􀂃 period
     􀂃 duty cycle
     􀂃 transition time
     􀂃 skew
   Delay specifications
     􀂃 maximum
     􀂃 minimum
   Timing exception
     􀂃 false path
     􀂃 multicycle path
   Path grouping

compile

report


2014年7月30日 星期三

EXCEL VBA

  • 結合GOOGLE雲端試算表 這是甚麼? 應該研究一下
https://groups.google.com/forum/?hl=zh-TW#!topic/labor_excel_vba/wdjGXOWtBKo

  • 思考用google 的雲端表單 把資料輸入雲端excel

  •  google  也提供類似vba的 script 叫做, google script (gs),可以參考下面網誌
http://jamesjantw.blogspot.tw/2013/01/my-first-google-apps-script.html




<iframe src="https://docs.google.com/forms/d/1WvQZeqQ2ATOwcXfmZhwpZRlSOrSBIJ9bEQH2xBJB7uI/viewform?embedded=true" width="760" height="500" frameborder="0" marginheight="0" marginwidth="0">載入中…</iframe>


https://docs.google.com/spreadsheets/d/19lVThVkGKC9jTilFmD5BE7P_OXegMcipmf7vm77Pv0s/edit?usp=sharing


<iframe src="https://docs.google.com/forms/d/1WvQZeqQ2ATOwcXfmZhwpZRlSOrSBIJ9bEQH2xBJB7uI/viewform?embedded=true" width="760" height="500" frameborder="0" marginheight="0" marginwidth="0">載入中…</iframe>




2014年7月22日 星期二

latch timing study

multi cycle path study

setup/hold time

scan 研究

Synthesis 研究

Synthesis 研究

設計種類型號
cell type: 每個ip 可根據需求選擇不同cell type 的target lib,speed area power trade off
                  VT: rvt/lvt/hvt
                  gate length : 30/35/40
                  Poly pitch : 140
                 Track:7t/9t/12t
排除不使用的cell :  Don't use cells
環境變因:
corner: lib corner + rc corner
process Corners: Ff/Tt/Ss, 製造過程中的變異,造成特性的差別,反應在電流速度上,有快慢不同,各種速度的cell數量統計成常態分布
core voltage 操作mode: OD / NONOD
電壓範圍: core voltage +- 10%
溫度範圍: -40 0 25 125
pvt corner 組合
     WC : ss  / low voltage / high temp
     WCL: ss  / low voltage / low temp
OCV:
timing constraint:
      speed factor
      IO delay factor
      clock uncertainty
      clock transition
      data transition
      min freq setting:考慮滿足dft mode 的操作頻率
wire load model :  ex, zero WLM
process variation :
    同一種工法做出來的東西,由於製作差異及操作環境 的差異都會有不同程度的差別  
    合成會以setup time 最worst 情況當作合成電路的參考依據
    同一製程下的同種邏輯gate ,也會有不同type 的cell, 主要有速度,耗電,面積等不同需求來決定使用type
各種macro的lib的準備
 為何需要許多不同的cell lib? 主要是各種cell type +各種pvt corner 的組合
不同組合會有不同timing 特性

MMMC : multi mode muti corner

MMMC : multi mode muti corner

cell library timing model


 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
http://books.google.com.tw/books?id=N1Zn1RdqPVoC&pg=PA66&lpg=PA66&dq=recovery+removal+timing+check&source=bl&ots=RH_76MrKn8&sig=kfnY8IULVYVRPxASKLmo8Jsc0kg&hl=zh-TW&sa=X&ei=ulXLU6WAIoL78QWTqIHoCw&ved=0CCEQ6AEwAjgK

timing report 怎麼看?

timing check 主要是在check data 訊號與參考訊號(通常是clock)到達endpoint的delay,檢查兩訊號到達endpoint的delay時間關係是否符合電路需求。
timing report 包含start point and endpoint 資訊, 及兩個timing section,主要在描述data訊號與參考訊號的delay 的資訊。
 
data arrived time section 就是data 訊號從start point 到end point 的path  delay.
data required time section 就是參考訊號到達end point

在ceck maximum delay時, 須滿足下面需求  data arrived time < data required time。
在ceck minimum delay時, 須滿足下面需求  data arrived time > data required time。

不同的電路有不同的時間關係的需求。
sync flip-flop setup/hold
gated clock
async recovery/removal
latch timing

 































Removal/ recovery 解釋

移除(release) active async signal (reset) 的時間要求

Active async signal 會overide register 的output signal,disable clock latch data input. 當async signal 變成inactive 時,則data output 轉由clock latch input data決定.  以非同步reset舉例,非同步的reset active 時, register 會被非同步的reset signal overide 而進入reset state, 但是當reset signal  變成inactive 時, register 若要同步的離開被overide 的情況, 則轉態時間點需要滿足recovery/removal(setup/hold)的要求, 在clock edge  的一定範圍內,  inactive async signal 轉態不能發生.

 async reset 從active 轉成inactive時,為了保證這個轉成由同步clock來決定data的output是同步發生. clock 的edge 前後需要保持stable state. 轉態不要發生在clock edge的區間. 這段區間由recover/removal所定義
 
Recovery, inactive async 轉態在clock edge 前發生, 需要提前一個最小時間, 指flip-flop output 要恢復成由clock latch input clock. 所以clock edge 要成為真正active,active async 需要在clock edge 發生前一段時間就要轉成inactive async. data output 才會同步由clock latch data input. 這段時間就是recovery time. Inactive async state的準備時間。

Removal, inactive async 轉態在clock edge 後發生, 需要clock edge 一個最小時間之後才發生,是說在clock edge 還在處於active async 時,此時clock edge 是不會去latch input data, async sigal 需要保持一段stable區間,才允許active async 轉成inactive async. 簡單說 要移除async 的override 必須要在clock edge 發生之後一段時間才可以轉態,才不會在這個clock edge發生不確定的data狀態。Active async state 轉態前維持時間

2014年7月19日 星期六

在sta 階段需要check的事項

在sta 階段需要check的事項
  • Design QA check
     多餘的電路會影響area,routing resource,power等。
     dumy port, 不正常的latch path, constant clock, leaf with no clock, clock with no leaf. Case analysis conflict.
   也可以check 到是否有不正常的被tie值。
  • Constraint QA check
    完整的constraint 才能確保所有timing path都有被分析,且被正確的分析。
    所有registers 都有constraint.
    io 有constraint.
    case/ muticycle/false path等exception path 都合理.
    timing 條件設定正確:clock cycle / timing margin /  wire load model /  pvt 參數。
  • Timing analysis
    對所有corner 及所有種類的timing violation path 都進行check 是否合理。
  Sync path/ clock gated check / multi cycle path / io path. / reset path/ lib defined timing path.

timing constraint section 編輯

Clock period 
(clock false path )
Timing condition
Io delay setting
Case analysis
False path


normal function
scan
bist

2014年7月18日 星期五

什麼是timing check ?

什麼是timing check ? 到底在check 什麼?
@ 比較兩訊號到達某一地點(cell)所花時間的關係比較。不同電路對於相關聯的輸入訊號的時間順序及間隔有一定的要求。

@ 簡單的說,是在比較或確保2個訊號從發生後,經過2條路徑,從各別的起點算起到達終點時, 所花時間(path delay)的大小,順序,時間差等。

@  一個訊號是我們要確認的目標,另一個訊號當做比較的基準點。 某些情況這個需要check 的訊號到達終點的時間長度(timing delay) 需要落在一個預期的範圍(range)之內。 這個range 由最大最小值定義出來(max/min value)。

@max time 的意思是訊號要在最大值之前到達終點。min time 的意思是訊號到達終點的時間需要大於某個值,太早到達會產生問題。

@在不同電路對時間的range的要求有不同的原因。 max time 要求,一個比較直覺的例子是,在max time 這個時間點會去收取訊號值,如果該訊號在該時間點前沒有到達終點處,則收到到資料將不保證這個值是預期的。

@對min time 要求的一個理解是,訊號在min time 前到達會影響到該時間點的資料收取。而該訊號是安排在min time 之後才被收取的。早到就會造成資料的錯亂。

@這種timing check 有許多不同種類。 flip-flop base design , sync 電路的setup/hold time check。 gated clock 的timing check。 reset 的remove/Recovery check。 latch base design 的timing check。

generic primetime script

Multi mode Multi corner

library
read in design
timing constraint
    create clock
     timing margin/uncertainty
     IO delay
     set case analysis
     exception
          false path
          multiple cycle path
report

primetime 指令

primetime 指令
@利用primetime 指令來check design quality/constraint quality/timing anlalysis。
@有用的primetime 指令:

all_fanin
all_fanout
list_attributes
filter_collection
parse_proc_arguments
get_clock_network_objects
get_attribute
define_proc_attribute
report_constraint
report_timing
check_time