મુખ્ય સામગ્રી પર જાઓ
VLSI (4361102) - Summer 2024 Solution (Gujarati)
  1. સંસાધનો/
  2. અભ્યાસ સામગ્રી/
  3. ઇલેક્ટ્રોનિક્સ અને કમ્યુનિકેશન એન્જિનિયરિંગ/
  4. ઇસીઇ સેમેસ્ટર 6/
  5. VLSI (4361102)/

VLSI (4361102) - Summer 2024 Solution (Gujarati)

મિલવ ડબગર
લેખક
મિલવ ડબગર
ઇલેક્ટ્રિકલ અને ઇલેક્ટ્રોનિક મેન્યુફેક્ચરિંગ ઉદ્યોગમાં અનુભવી લેક્ચરર. એમ્બેડેડ સિસ્ટમ્સ, ઈમેજ પ્રોસેસિંગ, ડેટા સાયન્સ, મેટલેબ, પાયથન, STM32માં કુશળ. એલ.ડી. કોલેજ ઓફ એન્જિનિયરિંગ - અમદાવાદથી કમ્યુનિકેશન સિસ્ટમ્સ એન્જિનિયરિંગમાં માસ્ટર્સ ડિગ્રી ધરાવતા મજબૂત શિક્ષણ વ્યાવસાયિક.
અનુક્રમણિકા

પ્રશ્ન 1(અ) [3 ગુણ]
#

FinFET ની રચના દોરો અને તેના ફાયદા લખો.

જવાબ:

graph LR
    A[Source] --> B[Gate]
    B --> C[Drain]
    D[Fin Structure] --> E[Multiple Gates]
    F[Silicon Substrate] --> D

કોષ્ટક: FinFET ના ફાયદા

ફાયદોવર્ણન
બેહતર નિયંત્રણગુણાકાર gates બહેતર channel control આપે છે
ઘટાડેલ લીકેજ3D રચનાના કારણે ઓછું off-state current
સુધારેલ કામગીરીવધુ drive current અને ઝડપી switching

યાદાશ્ત ટેકનિક: “BCR - Better Control Reduces leakage”


પ્રશ્ન 1(બ) [4 ગુણ]
#

એક્સટર્નલ બાયઝ હેઠળ MOS રચનાનું ડેપ્લીશન અને ઇનવર્શન સમજાવો

જવાબ:

કોષ્ટક: MOS બાયઝ પરિસ્થિતિઓ

બાયઝ પ્રકારગેટ વોલ્ટેજચેનલ સ્થિતિચાર્જ કેરિયર્સ
ડેપ્લીશનથોડું પોઝિટિવDepletedHoles દૂર ધકેલાય છે
ઇનવર્શનવધુ પોઝિટિવInvertedElectrons આકર્ષાય છે

ડાયાગ્રામ:

VG>GDRpaee-0tpgseliu(eobDtnseitporlnaetteion)VGECpGlh-aeastcnu0etnbres(oltInrnavteersion)
  • ડેપ્લીશન: પોઝિટિવ ગેટ વોલ્ટેજ electric field બનાવે છે જે holes ને દૂર ધકેલે છે
  • ઇનવર્શન: વધુ વોલ્ટેજ electrons ને આકર્ષે છે અને conducting channel બનાવે છે

યાદાશ્ત ટેકનિક: “DI - Depletion Inverts to conducting channel”


પ્રશ્ન 1(ક) [7 ગુણ]
#

n-ચેનલ MOSFET ને તેની કરંટ-વોલ્ટેજ લાક્ષણિકતાઓની મદદથી સમજાવો.

જવાબ:

કોષ્ટક: MOSFET ઓપરેટિંગ વિભાગો

વિભાગશરતડ્રેઇન કરંટલાક્ષણિકતાઓ
કટ-ઓફVGS < VTHID ≈ 0કોઈ conduction નથી
લિનિયરVDS < VGS-VTHID ∝ VDSResistive વર્તન
સેચ્યુરેશનVDS ≥ VGS-VTHID ∝ (VGS-VTH)²કરંટ VDS પર આધારિત નથી
graph LR
    A[Gate] --> B[n-channel]
    C[Source] --> B
    B --> D[Drain]
    E[p-substrate] --> B

મુખ્ય સમીકરણો:

  • Linear: ID = μnCox(W/L)[(VGS-VTH)VDS - VDS²/2]

  • Saturation: ID = (μnCox/2)(W/L)(VGS-VTH)²

  • રચના: ગેટ source અને drain વચ્ચે channel ને નિયંત્રિત કરે છે

  • કામગીરી: ગેટ વોલ્ટેજ channel conductivity ને modulate કરે છે

  • ઉપયોગો: ડિજિટલ switching અને analog amplification

યાદાશ્ત ટેકનિક: “CLS - Cut-off, Linear, Saturation regions”


પ્રશ્ન 1(ક OR) [7 ગુણ]
#

સ્કેલિંગ વ્યાખ્યાયિત કરો. full voltage સ્કેલિંગ સાથે constant voltage સ્કેલિંગની તુલના કરો. સ્કેલિંગના ગેરફાયદા લખો.

જવાબ:

વ્યાખ્યા: સ્કેલિંગ એ ડેન્સિટી અને performance વધારવા માટે device dimensions ઘટાડવાની પ્રક્રિયા છે.

કોષ્ટક: સ્કેલિંગ તુલના

પેરામીટરFull Voltage ScalingConstant Voltage Scaling
વોલ્ટેજα દ્વારા ઘટાડાય છેસ્થિર રહે છે
પાવર ડેન્સિટીસ્થિરα દ્વારા વધે છે
ઇલેક્ટ્રિક ફિલ્ડસ્થિરα દ્વારા વધે છે
પરફોર્મન્સબેહતરમધ્યમ સુધારો

ગેરફાયદા:

  • શોર્ટ ચેનલ ઇફેક્ટ્સ: ચેનલ લેન્થ modulation વધે છે
  • હોટ કેરિયર ઇફેક્ટ્સ: વધુ electric fields devices ને નુકસાન કરે છે
  • ક્વોન્ટમ ઇફેક્ટ્સ: ટનલિંગ currents નોંધપાત્ર રીતે વધે છે

યાદાશ્ત ટેકનિક: “SHQ - Short channel, Hot carriers, Quantum effects”


પ્રશ્ન 2(અ) [3 ગુણ]
#

CMOS ની મદદથી બે ઇનપુટ NAND ગેટ દોરો.

જવાબ:

ABABVGDNDDpnMMOpOnSYMSMOOSS

કોષ્ટક: NAND સત્ય કોષ્ટક

ABY
001
011
101
110

યાદાશ્ત ટેકનિક: “PP-SS: Parallel PMOS, Series NMOS”


પ્રશ્ન 2(બ) [4 ગુણ]
#

nMOS ઇન્વર્ટર માટે નોઇઝ ઇમ્યુનિટી અને નોઇઝ માર્જિન સમજાવો.

જવાબ:

કોષ્ટક: નોઇઝ પેરામીટર્સ

પેરામીટરવ્યાખ્યાફોર્મ્યુલા
NMHહાઇ નોઇઝ માર્જિનVOH - VIH
NMLલો નોઇઝ માર્જિનVIL - VOL
નોઇઝ ઇમ્યુનિટીનોઇઝ રિજેક્ટ કરવાની ક્ષમતાMin(NMH, NML)
graph TD
    A[VIL] --> B[VIH]
    C[VOL] --> D[VOH]
    E[NML] --> F[NMH]
  • VIL: મહત્તમ લો ઇનપુટ વોલ્ટેજ
  • VIH: લઘુત્તમ હાઇ ઇનપુટ વોલ્ટેજ
  • સારી નોઇઝ ઇમ્યુનિટી: મોટા નોઇઝ માર્જિન ખોટી switching ને રોકે છે

યાદાશ્ત ટેકનિક: “HILOL - High/Low Input/Output Levels”


પ્રશ્ન 2(ક) [7 ગુણ]
#

CMOS ઇન્વર્ટરની વોલ્ટેજ ટ્રાન્સફર લાક્ષણિકતાઓ (VTC) સમજાવો.

જવાબ:

કોષ્ટક: VTC વિભાગો

વિભાગઇનપુટ રેન્જઆઉટપુટટ્રાન્ઝિસ્ટર સ્થિતિઓ
A0 to VTNVDDpMOS ON, nMOS OFF
BVTN to VDD/2ટ્રાન્ઝિશનબંને આંશિક રીતે ON
CVDD/2 to VDD-|VTP|ટ્રાન્ઝિશનબંને આંશિક રીતે ON
DVDD-|VTP| to VDD0VpMOS OFF, nMOS ON
graph TD
    A[VIN = 0] --> B[VOUT = VDD]
    C[VIN = VDD/2] --> D[VOUT = VDD/2]
    E[VIN = VDD] --> F[VOUT = 0]

મુખ્ય લક્ષણો:

  • તીક્ષ્ણ ટ્રાન્ઝિશન: આદર્શ switching વર્તન
  • હાઇ ગેઇન: ટ્રાન્ઝિશન વિભાગમાં મોટો slope
  • રેઇલ-ટુ-રેઇલ: આઉટપુટ સંપૂર્ણ સપ્લાય રેન્જમાં swing કરે છે

યાદાશ્ત ટેકનિક: “ASH - A-region, Sharp transition, High gain”


પ્રશ્ન 2(અ OR) [3 ગુણ]
#

ડિપ્લીશન લોડ nMOS નો ઉપયોગ કરીને NOR2 ગેટનો અમલ કરો.

જવાબ:

ABVGDNDDYD(neVMpGOnlSSMeOt=Sio0n)Load

કોષ્ટક: NOR2 સત્ય કોષ્ટક

ABY
001
010
100
110

યાદાશ્ત ટેકનિક: “DPN - Depletion load, Parallel NMOS”


પ્રશ્ન 2(બ OR) [4 ગુણ]
#

એન્હાન્સમેન્ટ લોડ ઇન્વર્ટર અને ડિપ્લીશન લોડ ઇન્વર્ટર વચ્ચે તફાવત શોધો.

જવાબ:

કોષ્ટક: લોડ ઇન્વર્ટર તુલના

પેરામીટરએન્હાન્સમેન્ટ લોડડિપ્લીશન લોડ
થ્રેશોલ્ડ વોલ્ટેજVT > 0VT < 0
ગેટ કનેક્શનVGS = VDSVGS = 0
લોજિક હાઇVDD - VTVDD
પાવર કન્ઝમ્પશનવધુઓછું
સ્વિચિંગ સ્પીડધીમુંઝડપી
  • એન્હાન્સમેન્ટ: conduction માટે પોઝિટિવ ગેટ વોલ્ટેજની જરૂર
  • ડિપ્લીશન: ઝીરો ગેટ વોલ્ટેજ સાથે conduct કરે છે
  • પરફોર્મન્સ: ડિપ્લીશન લોડ બેહતર લાક્ષણિકતાઓ આપે છે

યાદાશ્ત ટેકનિક: “EPDLH - Enhancement Positive, Depletion Lower power, Higher speed”


પ્રશ્ન 2(ક OR) [7 ગુણ]
#

ડિપ્લીશન લોડ nMOS ઇન્વર્ટરને તેના VTC સાથે સમજાવો.

જવાબ:

સર્કિટ ઓપરેશન:

  • લોડ ટ્રાન્ઝિસ્ટર: હંમેશા conducting (VGS = 0, VT < 0)
  • ડ્રાઇવર ટ્રાન્ઝિસ્ટર: ઇનપુટ વોલ્ટેજ દ્વારા નિયંત્રિત
  • આઉટપુટ: વોલ્ટેજ ડિવાઇડર એક્શન દ્વારા નક્કી થાય છે
graph LR
    A[VIN Low] --> B[Driver OFF]
    B --> C[VOUT = VDD]
    D[VIN High] --> E[Driver ON]
    E --> F[VOUT ≈ 0V]

કોષ્ટક: ઓપરેટિંગ પોઇન્ટ્સ

ઇનપુટ સ્થિતિડ્રાઇવરલોડઆઉટપુટ
VIN = 0OFFONVDD
VIN = VDDONON≈ 0V

VTC લાક્ષણિકતાઓ:

  • VOH: VDD (એન્હાન્સમેન્ટ લોડ કરતાં બેહતર)
  • VOL: ડિપ્લીશન લોડ લાક્ષણિકતાઓના કારણે ઓછું
  • ટ્રાન્ઝિશન: સ્થિતિઓ વચ્ચે તીક્ષ્ણ switching

યાદાશ્ત ટેકનિક: “DLB - Depletion Load gives Better high output”


પ્રશ્ન 3(અ) [3 ગુણ]
#

ડિપ્લીશન લોડ nMOS નો ઉપયોગ કરીને EX-OR નો અમલ કરો.

જવાબ:

AVAD'DGNDVBD'DYDLBneoMpaOldSestion

કોષ્ટક: XOR સત્ય કોષ્ટક

ABY
000
011
101
110

અમલીકરણ: Y = A⊕B = A’B + AB'

યાદાશ્ત ટેકનિક: “XOR - eXclusive OR, અલગ inputs 1 આપે છે”


પ્રશ્ન 3(બ) [4 ગુણ]
#

ડિઝાઇન હાઇરાર્કીને ઉદાહરણ સાથે સમજાવો.

જવાબ:

કોષ્ટક: હાઇરાર્કી લેવલ્સ

લેવલકમ્પોનન્ટઉદાહરણ
સિસ્ટમસંપૂર્ણ ચિપમાઇક્રોપ્રોસેસર
મોડ્યુલફંક્શનલ બ્લોક્સALU, મેમરી
ગેટલોજિક ગેટ્સNAND, NOR
ટ્રાન્ઝિસ્ટરવ્યક્તિગત ડિવાઇસેસMOSFET
graph LR
    A[સિસ્ટમ લેવલ] --> B[મોડ્યુલ લેવલ]
    B --> C[ગેટ લેવલ]
    C --> D[ટ્રાન્ઝિસ્ટર લેવલ]
    E[CPU] --> F[ALU]
    F --> G[Adder]
    G --> H[MOSFET]

ફાયદા:

  • મોડ્યુલારિટી: સ્વતંત્ર ડિઝાઇન અને ટેસ્ટિંગ
  • પુનઃઉપયોગ: સામાન્ય બ્લોક્સ ઘણી વખત વપરાય છે
  • જાળવણીયોગ્યતા: સરળ debugging અને modification

યાદાશ્ત ટેકનિક: “SMG-T: System, Module, Gate, Transistor levels”


પ્રશ્ન 3(ક) [7 ગુણ]
#

Y ચાર્ટ ડિઝાઇન ફ્લો દોરો અને સમજાવો.

જવાબ:

graph LR
    A[બિહેવિયરલ ડોમેન] --> D[સિસ્ટમ સ્પેસિફિકેશન]
    B[સ્ટ્રક્ચરલ ડોમેન] --> E[આર્કિટેક્ચર]
    C[ફિઝિકલ ડોમેન] --> F[ફ્લોર પ્લાન]
    D --> G[એલ્ગોરિધમ]
    E --> H[લોજિક ડિઝાઇન]
    F --> I[લેઆઉટ]
    G --> J[RTL]
    H --> K[ગેટ લેવલ]
    I --> L[ટ્રાન્ઝિસ્ટર લેવલ]

કોષ્ટક: Y-ચાર્ટ ડોમેન્સ

ડોમેનવર્ણનઉદાહરણો
બિહેવિયરલસિસ્ટમ શું કરે છેએલ્ગોરિધમ્સ, RTL
સ્ટ્રક્ચરલતે કેવી રીતે ગોઠવાયેલું છેઆર્કિટેક્ચર, ગેટ્સ
ફિઝિકલકમ્પોનન્ટ્સ ક્યાં મૂકાયેલા છેફ્લોરપ્લાન, લેઆઉટ

ડિઝાઇન ફ્લો:

  • ટોપ-ડાઉન: બિહેવિયરલ → સ્ટ્રક્ચરલ → ફિઝિકલ
  • બોટમ-અપ: ફિઝિકલ constraints ઉપરના લેવલ્સને પ્રભાવિત કરે છે
  • પુનરાવર્તી: ઓપ્ટિમાઇઝેશન માટે બહુવિધ passes

યાદાશ્ત ટેકનિક: “BSP - Behavioral, Structural, Physical domains”


પ્રશ્ન 3(અ OR) [3 ગુણ]
#

CMOS નો ઉપયોગ કરીને NAND2 - SR લેચનો અમલ કરો

જવાબ:

SRQQ'NANNDAND

કોષ્ટક: SR લેચ ઓપરેશન

SRQQ'સ્થિતિ
00QQ'હોલ્ડ
0101રીસેટ
1010સેટ
1111અમાન્ય

યાદાશ્ત ટેકનિક: “SR-HRI: Set, Reset, Hold, Invalid states”


પ્રશ્ન 3(બ OR) [4 ગુણ]
#

સિલિકોન વેફર પર પેટર્ન અથવા માસ્ક ટ્રાન્સફર કરવા માટે કઈ પદ્ધતિનો ઉપયોગ થાય છે? તેને સ્વચ્છ આકૃતિઓ સાથે સમજાવો.

જવાબ:

પદ્ધતિ: લિથોગ્રાફી - પ્રકાશ એક્સપોઝર વાપરીને પેટર્ન ટ્રાન્સફર

graph LR
    A[UV પ્રકાશ સ્ત્રોત] --> B[પેટર્ન સાથે માસ્ક]
    B --> C[વેફર પર ફોટોરેસિસ્ટ]
    C --> D[એક્સપોઝ્ડ પેટર્ન]
    D --> E[ડેવલપ્ડ પેટર્ન]

પ્રક્રિયાના પગલાં:

પગલુંક્રિયાપરિણામ
કોટિંગફોટોરેસિસ્ટ લગાવોસમાન સ્તર
એક્સપોઝરમાસ્ક દ્વારા UVરાસાયણિક ફેરફાર
ડેવલપમેન્ટએક્સપોઝ્ડ રેસિસ્ટ દૂર કરોપેટર્ન ટ્રાન્સફર

ઉપયોગો: ગેટ્સ, interconnects, contact holes બનાવવા

યાદાશ્ત ટેકનિક: “CED - Coating, Exposure, Development”


પ્રશ્ન 3(ક OR) [7 ગુણ]
#

MOSFET ફેબ્રિકેશનમાં મેટલ deposit કરવા માટે કઈ પદ્ધતિઓનો ઉપયોગ થાય છે? યોગ્ય ડાયાગ્રામ સાથે ડિપોઝિશનને વિગતવાર સમજાવો.

જવાબ:

કોષ્ટક: મેટલ ડિપોઝિશન પદ્ધતિઓ

પદ્ધતિટેકનિકઉપયોગ
ફિઝિકલ વેપર ડિપોઝિશનSputtering, Evaporationએલ્યુમિનિયમ, કોપર
કેમિકલ વેપર ડિપોઝિશનCVD, PECVDટંગસ્ટન, ટાઇટેનિયમ
ઇલેક્ટ્રોપ્લેટિંગઇલેક્ટ્રોકેમિકલકોપર interconnects
graph LR
    A[ટાર્ગેટ મટેરિયલ] --> B[આયન બોમ્બાર્ડમેન્ટ]
    B --> C[બહાર નીકળેલા એટમ્સ]
    C --> D[સબસ્ટ્રેટ કોટિંગ]
    E[વેફર] --> D

સ્પટરિંગ પ્રક્રિયા:

  • આયન બોમ્બાર્ડમેન્ટ: આર્ગોન આયન્સ ટાર્ગેટ મટેરિયલને અથડાવે છે
  • એટમ ઇજેક્શન: ટાર્ગેટ એટમ્સ બહાર નીકળે છે
  • ડિપોઝિશન: એટમ્સ વેફર સપાટી પર સ્થિર થાય છે
  • નિયંત્રણ: દબાણ અને પાવર દર નક્કી કરે છે

ફાયદા:

  • સમાન જાડાઈ: ઉત્તમ સ્ટેપ કવરેજ
  • ઓછું તાપમાન: ડિવાઇસ integrity જાળવે છે
  • વિવિધતા: બહુવિધ મટેરિયલ્સ શક્ય

યાદાશ્ત ટેકનિક: “IBE-DC: Ion Bombardment Ejects atoms for Deposition Control”


પ્રશ્ન 4(અ) [3 ગુણ]
#

ડિપ્લીશન nMOS લોડ સાથે Z= ((A+B+C)·(D+E+F). G)’ અમલમાં મૂકો.

જવાબ:

ABCDEFGVGDNDDZDeplP(P(S(eaOaOeAtrRrRrNia)a)iDolle)nllseeLlload

લોજિક અમલીકરણ:

  • પ્રથમ સ્તર: (A+B+C) અને (D+E+F) OR ફંક્શન્સ
  • બીજું સ્તર: G સાથે AND
  • આઉટપુટ: nMOS રચનાના કારણે ઉલટાવેલું પરિણામ

યાદાશ્ત ટેકનિક: “POI - Parallel OR, Inversion at output”


પ્રશ્ન 4(બ) [4 ગુણ]
#

VERILOG માં વપરાતી ડિઝાઇન શૈલીઓની સૂચિ બનાવો અને સમજાવો.

જવાબ:

કોષ્ટક: વેરિલોગ ડિઝાઇન શૈલીઓ

શૈલીવર્ણનઉપયોગનો કેસઉદાહરણ
બિહેવિયરલએલ્ગોરિધમ વર્ણનઉચ્ચ-સ્તરીય મોડેલિંગalways blocks
ડેટાફ્લોબૂલિયન expressionsકમ્બિનેશનલ લોજિકassign statements
સ્ટ્રક્ચરલકમ્પોનન્ટ instantiationહાઇરાર્કિકલ ડિઝાઇનmodule connections
ગેટ-લેવલપ્રિમિટિવ ગેટ્સલો-લેવલ ડિઝાઇનand, or, not gates

લાક્ષણિકતાઓ:

  • બિહેવિયરલ: સર્કિટ શું કરે છે તેનું વર્ણન
  • સ્ટ્રક્ચરલ: કમ્પોનન્ટ્સ કેવી રીતે જોડાય છે તે બતાવે છે
  • મિશ્રિત: જટિલ ડિઝાઇન માટે બહુવિધ શૈલીઓ જોડે છે

યાદાશ્ત ટેકનિક: “BDSG - Behavioral, Dataflow, Structural, Gate-level”


પ્રશ્ન 4(ક) [7 ગુણ]
#

CMOS નો ઉપયોગ કરીને NAND2 SR લેચનો અમલ કરો અને CMOS નો ઉપયોગ કરીને NOR2 SR લેચનો પણ અમલ કરો.

જવાબ:

NAND2 SR લેચ:

module nand_sr_latch(
    input S, R,
    output Q, Q_bar
);
    nand(Q, S, Q_bar);
    nand(Q_bar, R, Q);
endmodule

NOR2 SR લેચ:

module nor_sr_latch(
    input S, R,
    output Q, Q_bar
);
    nor(Q_bar, R, Q);
    nor(Q, S, Q_bar);
endmodule

કોષ્ટક: લેચ તુલના

પ્રકારસક્રિય સ્તરસેટ ઓપરેશનરીસેટ ઓપરેશન
NANDલો (0)S=0, R=1S=1, R=0
NORહાઇ (1)S=1, R=0S=0, R=1

મુખ્ય તફાવતો:

  • NAND: લો ઇનપુટ્સ સાથે Set/Reset
  • NOR: હાઇ ઇનપુટ્સ સાથે Set/Reset
  • ફીડબેક: ક્રોસ-કપલ્ડ ગેટ્સ સ્થિતિ જાળવે છે

યાદાશ્ત ટેકનિક: “NAND-Low, NOR-High active”


પ્રશ્ન 4(અ OR) [3 ગુણ]
#

Y= (ABC + DE + F)’ ને ડિપ્લીશન nMOS લોડ સાથે અમલમાં મૂકો.

જવાબ:

ABCDEFVGDNDDYDeplSSSeeeitrrniiigoeelnsseL((oAAaNNdDD))

અમલીકરણ લોજિક:

  • ABC: સીરિઝ કનેક્શન (AND ફંક્શન)
  • DE: સીરિઝ કનેક્શન (AND ફંક્શન)
  • F: સિંગલ ટ્રાન્ઝિસ્ટર
  • પરિણામ: ઇનવર્શનના કારણે Y = (ABC + DE + F)'

યાદાશ્ત ટેકનિક: “SSS-I: Series-Series-Single with Inversion”


પ્રશ્ન 4(બ OR) [4 ગુણ]
#

ફુલ એડરને અમલમાં મૂકવા માટે વેરિલોગ કોડ લખો.

જવાબ:

module full_adder(
    input a, b, cin,
    output sum, cout
);
    assign sum = a ^ b ^ cin;
    assign cout = (a & b) | (cin & (a ^ b));
endmodule

કોષ્ટક: ફુલ એડર સત્ય કોષ્ટક

ABCinSumCout
00000
00110
01010
01101
10010
10101
11001
11111

લોજિક ફંક્શન્સ:

  • સમ: ટ્રિપલ XOR ઓપરેશન
  • કેરી: ઇનપુટ્સનું મેજોરિટી ફંક્શન

યાદાશ્ત ટેકનિક: “XOR-Sum, Majority-Carry”


પ્રશ્ન 4(ક OR) [7 ગુણ]
#

ડિપ્લીશન લોડનો ઉપયોગ કરીને Y = (S1’S0’I0 + S1’S0 I1 + S1 S0’ I2 + S1 S2 I3) લાગૂ કરો

જવાબ:

નોંધ: છેલ્લા ટર્મમાં S2 એ S0 હોવું જોઈએ.

// 4:1 મલ્ટિપ્લેક્સર અમલીકરણ
module mux_4to1(
    input [1:0] sel,  // S1, S0
    input [3:0] data, // I3, I2, I1, I0
    output Y
);
    assign Y = (sel == 2'b00) ? data[0] :
               (sel == 2'b01) ? data[1] :
               (sel == 2'b10) ? data[2] :
                                data[3];
endmodule

કોષ્ટક: મલ્ટિપ્લેક્સર સિલેક્શન

S1S0પસંદ કરેલ ઇનપુટઆઉટપુટ
00I0Y = I0
01I1Y = I1
10I2Y = I2
11I3Y = I3

સર્કિટ અમલીકરણ:

  • ડીકોડર: S1, S0 select signals જનરેટ કરે છે
  • AND ગેટ્સ: દરેક ઇનપુટ સંબંધિત select સાથે ANDed
  • OR ગેટ: બધા AND આઉટપુટ્સને જોડે છે

યાદાશ્ત ટેકનિક: “DAO - Decoder, AND gates, OR combination”


પ્રશ્ન 5(અ) [3 ગુણ]
#

CMOS નો ઉપયોગ કરીને લોજિક ફંક્શન G = (PQR +U(S+T))’ નો અમલ કરો

જવાબ:

PQRUSTPQRUSTVGDNDDGP(S(S(P(aNeNeAaOrOrArNrRaRiNiDa)l)eDe)lls)sleelpnlMMpOOnMSSMOOSS

અમલીકરણ:

  • pMOS: OR માટે Parallel, AND માટે Series (ઉલટી લોજિક)
  • nMOS: AND માટે Series, OR માટે Parallel (સામાન્ય લોજિક)
  • પરિણામ: ડી મોર્ગનનો નિયમ આપોઆપ લાગુ થાય છે

યાદાશ્ત ટેકનિક: “PSSP - Parallel Series Series Parallel”


પ્રશ્ન 5(બ) [4 ગુણ]
#

વેરિલોગનો ઉપયોગ કરીને 8×1 મલ્ટિપ્લેક્સર અમલમાં મૂકો.

જવાબ:

module mux_8to1(
    input [2:0] sel,     // 3-bit select
    input [7:0] data,    // 8 data inputs
    output reg Y         // Output
);
    always @(*) begin
        case(sel)
            3'b000: Y = data[0];
            3'b001: Y = data[1];
            3'b010: Y = data[2];
            3'b011: Y = data[3];
            3'b100: Y = data[4];
            3'b101: Y = data[5];
            3'b110: Y = data[6];
            3'b111: Y = data[7];
        endcase
    end
endmodule

કોષ્ટક: 8:1 MUX સિલેક્શન

S2S1S0આઉટપુટ
000data[0]
001data[1]
010data[2]
011data[3]
100data[4]
101data[5]
110data[6]
111data[7]

યાદાશ્ત ટેકનિક: “Case-Always: always block માં case statement વાપરો”


પ્રશ્ન 5(ક) [7 ગુણ]
#

વેરિલોગમાં સ્ટ્રક્ચરલ મોડેલિંગ શૈલીનો ઉપયોગ કરીને 4 બીટ ફુલ એડરને લાગૂ કરો.

જવાબ:

module full_adder_4bit(
    input [3:0] a, b,
    input cin,
    output [3:0] sum,
    output cout
);
    wire c1, c2, c3;
    
    full_adder fa0(.a(a[0]), .b(b[0]), .cin(cin), 
                   .sum(sum[0]), .cout(c1));
    full_adder fa1(.a(a[1]), .b(b[1]), .cin(c1), 
                   .sum(sum[1]), .cout(c2));
    full_adder fa2(.a(a[2]), .b(b[2]), .cin(c2), 
                   .sum(sum[2]), .cout(c3));
    full_adder fa3(.a(a[3]), .b(b[3]), .cin(c3), 
                   .sum(sum[3]), .cout(cout));
endmodule

module full_adder(
    input a, b, cin,
    output sum, cout
);
    assign sum = a ^ b ^ cin;
    assign cout = (a & b) | (cin & (a ^ b));
endmodule

સ્ટ્રક્ચરલ લક્ષણો:

  • મોડ્યુલ instantiation: ચાર 1-બીટ ફુલ એડર્સ
  • કેરી ચેઇન: સ્ટેજો વચ્ચે carries કનેક્ટ કરે છે
  • હાઇરાર્કિકલ ડિઝાઇન: બેસિક ફુલ એડર મોડ્યુલનો પુનઃઉપયોગ

કોષ્ટક: રિપલ કેરી એડિશન

સ્ટેજઇનપુટ્સકેરી ઇનસમકેરી આઉટ
FA0A[0], B[0]CinS[0]C1
FA1A[1], B[1]C1S[1]C2
FA2A[2], B[2]C2S[2]C3
FA3A[3], B[3]C3S[3]Cout

યાદાશ્ત ટેકનિક: “RCC - Ripple Carry Chain connection”


પ્રશ્ન 5(અ OR) [3 ગુણ]
#

CMOS નો ઉપયોગ કરીને લોજિક ફંક્શન Y = ((AF(D + E) )+ (B+ C))’ ને અમલમાં મૂકો.

AFDEBCAFDEBCVGDNDDYSPPSPPeaaeaarrrrrriaaiaaellellsllslleeeepllnllMMOpOnSMSMOOSS

લોજિક વિભાજન:

  • આંતરિક ટર્મ: AF(D + E) = A AND F AND (D OR E)
  • બાહ્ય ટર્મ: (B + C) = B OR C
  • અંતિમ: Y = (AF(D + E) + (B + C))'

CMOS અમલીકરણ:

  • PMOS નેટવર્ક: ફંક્શનનું complement અમલ કરે છે
  • NMOS નેટવર્ક: મૂળ ફંક્શન અમલ કરે છે
  • પરિણામ: કુદરતી inversion Y આપે છે

યાદાશ્ત ટેકનિક: “PNAI - PMOS Network Applies Inversion”


પ્રશ્ન 5(બ OR) [4 ગુણ]
#

વેરિલોગનો ઉપયોગ કરીને 4 બીટ અપ કાઉન્ટર અમલમાં મૂકવું

જવાબ:

module counter_4bit_up(
    input clk, reset,
    output reg [3:0] count
);
    always @(posedge clk or posedge reset) begin
        if (reset)
            count <= 4'b0000;
        else
            count <= count + 1;
    end
endmodule

કોષ્ટક: કાઉન્ટર સિક્વન્સ

ક્લોકરીસેટકાઉન્ટનેક્સ્ટ કાઉન્ટ
1X0000
000000001
000010010
0
011110000

લક્ષણો:

  • સિંક્રોનસ રીસેટ: ક્લોક એજ પર રીસેટ
  • ઓટો રોલઓવર: 1111 → 0000
  • 4-બીટ રેન્જ: 0 થી 15 સુધી ગણે છે

યાદાશ્ત ટેકનિક: “SRA - Synchronous Reset with Auto rollover”


પ્રશ્ન 5(ક OR) [7 ગુણ]
#

વેરિલોગમાં બિહેવિયરલ મોડેલિંગ સ્ટાઈલનો ઉપયોગ કરીને 3:8 ડીકોડરનો અમલ કરો

જવાબ:

module decoder_3to8(
    input [2:0] select,
    input enable,
    output reg [7:0] out
);
    always @(*) begin
        if (enable) begin
            case(select)
                3'b000: out = 8'b00000001;
                3'b001: out = 8'b00000010;
                3'b010: out = 8'b00000100;
                3'b011: out = 8'b00001000;
                3'b100: out = 8'b00010000;
                3'b101: out = 8'b00100000;
                3'b110: out = 8'b01000000;
                3'b111: out = 8'b10000000;
                default: out = 8'b00000000;
            endcase
        end else begin
            out = 8'b00000000;
        end
    end
endmodule

કોષ્ટક: 3:8 ડીકોડર સત્ય કોષ્ટક

EnableA2A1A0Y7Y6Y5Y4Y3Y2Y1Y0
0XXX00000000
100000000001
100100000010
101000000100
101100001000
110000010000
110100100000
111001000000
111110000000

મુખ્ય લક્ષણો:

  • બિહેવિયરલ મોડેલિંગ: always બ્લોક અને case statement વાપરે છે
  • Enable કંટ્રોલ: enable = 0 હોય ત્યારે બધા આઉટપુટ્સ disabled
  • વન-હોટ આઉટપુટ: એક સમયે માત્ર એક આઉટપુટ active
  • 3-બીટ ઇનપુટ: 8 આઉટપુટ્સમાંથી એક પસંદ કરે છે

ઉપયોગો:

  • મેમરી એડ્રેસિંગ: ચિપ select જનરેશન
  • ડેટા રાઉટિંગ: ચેનલ સિલેક્શન
  • કંટ્રોલ લોજિક: સ્ટેટ મશીન આઉટપુટ્સ

યાદાશ્ત ટેકનિક: “BEOH - Behavioral Enable One-Hot decoder”