Π‘Π½ΠΈΠΌΠΊΠ° -
ΠΠ°
ΠΡΠ΅Π΄ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΡΠ΅ ΠΎΡ Intel
ΠΡΠΏΡΠ΅ΠΊΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈΡ Π±ΡΠΎΠΉ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ, ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΡΠ΅ Π²ΡΠ΅ ΠΎΡΠ΅ ΡΠ° ΠΏΡΠΈΠ½ΡΠ΄Π΅Π½ΠΈ Π΄Π° Π²ΡΡΡΠ°Ρ ΡΠ°ΡΡ ΠΎΡ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΡΡΠ½ΠΎ. ΠΠ²ΡΠΎΡΠΈΡΠ΅ Π½Π° ΠΊΠ½ΠΈΠ³Π°ΡΠ° "
Π£ΡΡΠ²ΡΡΡΠ΅Π½ΡΡΠ²Π°Π½ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ ΡΠΈΠ½ΡΠ΅Π· "ΠΊΠ°Π·Π²Π°Ρ, ΡΠ΅ ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠΈΡΠ΅ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ Π² Skill ΠΈΠ»ΠΈ Python ΠΎΡ Π΄Π²Π° ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡΠ΅Π΄Π°, Ρ ΠΊΠΎΠΈΡΠΎ Π΄Π° ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΠΊΠ»Π΅ΡΠΊΠΈ .ΠΠΈΡΠ°Ρ ΡΠ΅ ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ Π·Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΡΠ΅ΡΠΈ, Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½ΠΈ ΠΎΡ EDA ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ Π½Π° ΡΠΈΠΏ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ 22nm ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ, ΡΠ΅Π·ΠΈ ΠΎΡΡΠ΅ΡΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΎΡΠ½Π΅ΠΌΠ°Ρ Π΄ΠΎ 30 ΡΠ΅ΡΠ°Π±Π°ΠΉΡΠ°.
DARPA ΡΠ΅ΡΠΈ Π΄Π° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ° ΡΠΈΡΡΠ°ΡΠΈΡΡΠ° ΠΈ Π΄Π° ΡΠ΅ ΠΎΠΏΠΈΡΠ° Π΄Π° ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠ° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½Π΅. Π Π² Π°Π³Π΅Π½ΡΠΈΡΡΠ°
ΠΠ°ΠΊΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°
ΠΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Π²ΠΊΠ»ΡΡΠ²Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ Π΅ΡΠ°ΠΏΠΈ Π½Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠΈΠΏΠΎΠ²Π΅. ΠΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΈΠ²Π°ΡΠ°
Flow Runner Π΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° RTL ΠΈ GDSII Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΠΈΠ½Π΄ΡΡΡΡΠΈΠ°Π»Π΅Π½ ΡΡΠ°Π½Π΄Π°ΡΡ Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°Π»Π½ΠΈ ΡΡ
Π΅ΠΌΠΈ ΠΈ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ ΡΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π΅ Π±Π°Π·ΠΈΡΠ°Π½ΠΎ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½Π° ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΡ Docker. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ Flow Runner ΠΊΠ°ΠΊΡΠΎ Π² ΠΎΠ±Π»Π°ΠΊΠ°, ΡΠ°ΠΊΠ° ΠΈ Π»ΠΎΠΊΠ°Π»Π½ΠΎ. Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ Π·Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π΅ Π² ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΎΡΠΎ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅
RePlAce Π΅ ΠΎΠ±Π»Π°ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π±Π°Π·ΠΈΡΠ°Π½ΠΎ Π½Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅ΡΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡ Π·Π° ΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π²ΡΡΡ
Ρ ΡΠΈΠΏ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ°ΡΡΡΡΡΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ. ΠΎΡ
TritonCTS β ΠΏΠΎΠΌΠΎΡΠ½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° Π·Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΊΡΠΎΠ²ΠΈ ΠΈΠΌΠΏΡΠ»ΡΠΈ, ΠΏΠΎΠ΄Π°Π²Π°Π½ΠΈ ΠΊΡΠΌ ΡΠΈΠΏΠ°. ΠΠΎΠΌΠ°Π³Π° Π·Π° Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΡΠΎΠ²Π½ΠΈΠΊΠΎΠ²ΠΈ ΡΠΈΠ³Π½Π°Π»ΠΈ ΠΊΡΠΌ Π²ΡΠΈΡΠΊΠΈ ΡΠ°ΡΡΠΈ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ ΡΡΡ ΡΡΡΠΈΡΠ΅ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡ. ΠΡΠΈΠ½ΡΠΈΠΏΡΡ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π°Π²Π° Π½Π°
OpenSTA β Π΄Π²ΠΈΠ³Π°ΡΠ΅Π» Π·Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ. Π’ΠΎΠΉ Π΄Π°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π½Π° Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠ° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° ΡΠΈΠΏΠ°, ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° Π±ΡΠ΄Π΅ ΡΠ³Π»ΠΎΠ±Π΅Π½. ΠΡΠΈΠΌΠ΅ΡΠ΅Π½ ΠΊΠΎΠ΄ Π² OpenSTA
@@ -6,7 +6,7 @@ read_liberty -corner ff example1_fast.lib
read_verilog example1.v
link_design top
set_timing_derate -early 0.9
set_timing_derate -early 1.1
set_timing_derate -late 1.1
create_clock -name clk -period 10 {clk1 clk2 clk3}
set_input_delay -clock clk 0 {in1 in2}
# report all corners
ΠΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π½Π° netlist Π½Π° Verilog ΠΊΠΎΠ΄, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Ρ ΡΠΎΡΠΌΠ°Ρ Liberty, SDC ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄Ρ.
ΠΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π° ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠΈ
ΠΠΊΡΠΏΠ΅ΡΡΠΈ ΠΎΡ IBM ΠΈ IEEE
ΠΡΠ°ΠΊΠ²Π° ΡΠ΅ ΡΡΡΠΎ, ΡΠ΅ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅Ρ Π½Π° OpenROAD ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π΅ ΠΌΠΎΡΠ½Π° ΠΎΠ±ΡΠ½ΠΎΡΡ ΠΎΠΊΠΎΠ»ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅ ΠΈ ΡΠ΅ ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅ Π½ΠΎΠ²ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°ΡΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.
Π‘Π½ΠΈΠΌΠΊΠ° -
ΠΠ΅ΡΠ΅ ΠΈΠΌΠ° ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ - Π»Π°Π±ΠΎΡΠ°ΡΠΎΡΠΈΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°ΡΠ° ΡΠΈΠΏΠΎΠ²Π΅, Π±Π°Π·ΠΈΡΠ°Π½Π° Π² ΠΠΈΡΠΈΠ³Π°Π½ΡΠΊΠΈΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅Ρ,
ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ, ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Ρ ΠΏΠΎΠ΄ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ Π½Π° DARPA, ΡΠ΅ ΠΎΡΠ°ΠΊΠ²Π° Π΄Π° ΠΈΠΌΠ°Ρ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΎ Π²ΡΠ·Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π²ΡΡΡ
Ρ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½Π°ΡΠ° ΠΈΠ½Π΄ΡΡΡΡΠΈΡ ΠΈ Π² ΡΠ°Π·ΠΈ ΠΎΠ±Π»Π°ΡΡ ΡΠ΅ Π·Π°ΠΏΠΎΡΠ½Π°Ρ Π΄Π° ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ Π½ΠΎΠ²ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ. ΠΡΠΈΠΌΠ΅Ρ Π·Π° ΡΠΎΠ²Π° Π΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ
Π‘Π²ΠΎΠ±ΠΎΠ΄Π½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΈΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ Π½Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°ΡΠΈ ΡΠΈΡΠΌΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈ Π½Π° OpenROAD Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ Π½Π° EDA ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ ΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½ Π½Π° ΡΠΈΠΏΠΎΠ²Π΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π²ΡΡΠ½Π°Ρ Π² ΠΈΠ½Π΄ΡΡΡΡΠΈΠ°Π»Π΅Π½ ΡΡΠ°Π½Π΄Π°ΡΡ.
ΠΠ° ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΠΈΡΠ΅ΠΌ Π² Π½Π°ΡΠΈΡ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π΅Π½ Π±Π»ΠΎΠ³:
Π Π°Π·ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅: Cisco UCS B480 M5 Blade Server Π Π°Π·ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅: ΠΈΠ·ΡΡΠ»ΠΎ ΡΠ»Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ NetApp AFF A300 - ΠΏΠΎΠ³Π»Π΅Π΄ ΠΎΡΠ²ΡΡΡΠ΅ Π‘ΡΡΠ²ΡΡΠΈ Ρ Π²ΠΈΡΠΎΠΊΠ° ΠΏΠ»ΡΡΠ½ΠΎΡΡ: Π°Π½Π°Π»ΠΈΠ· Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΡ Cisco UCS - ΡΠ°Π·ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com