Foundationপ্রথম নীতি থেকে
LEVEL 2 · Digital Logic & Computer Organization

Hardware Description Language

হার্ডওয়্যার বর্ণনা ভাষা

Hardware-কে কোডে বর্ণনা করার ভাষা — structural (কোন gate, কীভাবে তারে জোড়া) বা behavioral (কী আচরণ চাই) স্টাইলে। Verilog সবচেয়ে প্রচলিত।

also: HDL, hardware description language

Billion-transistor চিপ হাতে schematic এঁকে ডিজাইন করা অসম্ভব — তাই engineer hardware বর্ণনা করেন একটা ভাষায়, gate নিজে তারে না জুড়ে। সেই ভাষার নাম HDL। ইন্ডাস্ট্রি-স্ট্যান্ডার্ড HDL-এর নাম Verilog (১৯৮৪, Gateway Design Automation; ১৯৯৫-এ IEEE 1364), আর তার আধুনিক superset SystemVerilog (IEEE 1800)।

দুইটা লেখনশৈলী:

  • Structural — কোন gate, কীভাবে তারে জোড়া, schematic-এর সরাসরি অনুবাদ (xor, and, or primitive instantiate করা)।
  • Behavioral — শুধু আচরণ বর্ণনা করা (assign sum = a ^ b ^ cin;), আর একটা synthesis tool ঠিক করে কোন গেট।

wire বনাম reg — সবচেয়ে বড় ভুল বোঝাবুঝি: reg নামটা শুনতে “register/flip-flop” মনে হয়, কিন্তু আসলে মানে শুধু “একটা procedural block (always)-এর ভেতরে assign হওয়া variable”। এটা flip-flop হয় শুধু যদি always @(posedge clk) (clocked)-এর ভেতরে assign হয়; always @(*) (combinational)-এর ভেতরে হলে এটা নিছক গেট, কোনো memory না।

দুইটা সম্পূর্ণ ভিন্ন ব্যবহার একই কোডের:

SimulationSynthesis
কাজLogic verify করা, software-এGate-level netlist তৈরি করা
টুলIcarus Verilog, ModelSimYosys, Synopsys Design Compiler
আউটপুটPass/fail, waveformবাস্তব circuit (FPGA bitstream/ASIC)
#10, $displayব্যবহারযোগ্যঅগ্রাহ্য/অবৈধ (simulation-only)

Open-source টুলচেইন (Yosys + OpenROAD, SkyWater ১৩০ন্যানোমিটার PDK) দিয়ে এখন hobbyist-ও নিজের Verilog থেকে সত্যিকারের সিলিকন চিপ tape-out করাতে পারেন — এক দশক আগেও যা শুধু বড় কোম্পানির আওতায় ছিল।