π Application-Specific Integrated Circuit (ASIC)
ASIC β ΡΡΠΎ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΠ°, ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ ΠΏΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° Π·Π°Π΄Π°Ρ. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ FPGA ΠΈΠ»ΠΈ CPU, Π΅Ρ ΡΡΡΡΠΊΡΡΡΠ° ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π° Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½Π°.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
ASIC ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ Π±Π»ΠΎΠΊΠΎΠ², ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠΎ:
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
- ΠΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ
- ΠΠ»ΠΎΡΠ°Π΄ΠΈ ΠΊΡΠΈΡΡΠ°Π»Π»Π°
- Π‘Π΅Π±Π΅ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΈ ΠΌΠ°ΡΡΠΎΠ²ΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ°ΠΏΡ:
- RTL-ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° Verilog ΠΈΠ»ΠΈ VHDL
- Synthesis β Gate-level Netlist
- Place and Route
- DRC / LVS ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π° ΡΠ°Π±ΡΠΈΠΊΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, TSMC)
- Π€ΠΈΠ½Π°Π»ΡΠ½Π°Ρ ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Π§Π°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Standard Cell Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΈ IP Cores (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, PCIe, DDR, CPU ΡΠ΄ΡΠ°).
βοΈ ΠΠ΄Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ
ΠΠ±Π»Π°ΡΡΡ | ΠΡΠΈΠΌΠ΅ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ |
---|---|
Crypto | SHA256 ASIC-ΠΌΠ°ΠΉΠ½Π΅ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Bitmain) |
Networking | Switch ASIC, Router SoC, NPU |
Audio/Video | ΠΠΎΠ΄Π΅ΠΊΠΈ, DSP, Π²ΠΈΠ΄Π΅ΠΎΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°, FPGA to ASIC ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ |
Mobile | Apple Silicon, Snapdragon, Tensor |
Automotive | ADAS ΡΠΈΡΡΠ΅ΠΌΡ, CAN Controller |
IoT | Π£Π»ΡΡΡΠ°ΡΠ½Π΅ΡΠ³ΠΎΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ ΠΏΠΎΠ΄ ΡΠ΅Π½ΡΠΎΡΡ |
π» ΠΡΠΈΠΌΠ΅Ρ (ΡΡΠ°Π³ΠΌΠ΅Π½Ρ RTL Π½Π° Verilog)
module xor_gate(input a, input b, output y);
assign y = a ^ b;
endmodule
π Π£ΡΡΡΠΎΠΉΡΡΠ²ΠΎ ASIC (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π±Π»ΠΎΠΊΠΈ)
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ | ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
---|---|
ALU | ΠΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠΎ-Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ |
DMA | ΠΠ±ΠΌΠ΅Π½ Ρ ΠΏΠ°ΠΌΡΡΡΡ Π±Π΅Π· ΡΡΠ°ΡΡΠΈΡ CPU |
IO Controller | Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°ΠΌΠΈ |
DSP Blocks | Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² |
NPU / AI Core | ΠΠΏΠΏΠ°ΡΠ°ΡΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π΅ΠΉΡΠΎΡΠ΅ΡΠ΅ΠΉ |
PLL | Π’Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ |
SRAM, ROM | ΠΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΠΏΠ°ΠΌΡΡΡ |
π§© Π‘Π²ΡΠ·Π°Π½Π½ΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ
β ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°
-
ΠΡΡΠΎΡΠ°ΠΉΡΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΡΠ½Π΅ΡΠ³ΠΎΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ
-
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅
-
ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ, ΠΌΠ°Π»ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π² ΠΌΠ°ΡΡΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅
-
ΠΠ°Π΄ΡΠΆΠ½ΠΎΡΡΡ ΠΈ Π·Π°ΡΠΈΡΡΠ½Π½ΠΎΡΡΡ (Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ)
β ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ
-
ΠΡΡΠΎΠΊΠ°Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ Π·Π°ΠΏΡΡΠΊΠ° Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ
-
ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ: Π½Π΅Π»ΡΠ·Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΡΠΈΡΡ
-
ΠΠΎΠ»Π³ΠΈΠΉ ΡΠΈΠΊΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ (ΠΌΠ΅ΡΡΡΡ ΠΈ Π³ΠΎΠ΄Ρ)
-
ΠΠ΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π΄Π»Ρ ΠΌΠ°Π»ΡΡ ΠΎΠ±ΡΡΠΌΠΎΠ² ΠΈΠ»ΠΈ Π±ΡΡΡΡΠΎΠΌΠ΅Π½ΡΡΡΠΈΡ ΡΡ Π·Π°Π΄Π°Ρ