// آموزش hspice - الکترونیکا

الکترونیکا پروژه های الکترونیک و مکانیک

طراحی پروژه های صنعتی

پروژه های صنعتی میباسیت بر اساس قابلیتهای خاص و امکانات ویژه بر اساس خواست کارفرما طراحی گردد و تمامی امکانات خواسته شده در پروژه لحاظ شود.همچنین مراحل تست پروژه در محیط مورد نظر اجرا شود.پروژه های صنعتی باید بر اساس کمترین قیمت تمام شده طراحی شوند.گروه FZA با در نظر گرفتن کلیه موارد نیازمند ارائه ی تمامی جزیات پروژه از طرف کارفرما و در قرارداد فیمابین میباشد.

چاپ و طراحی PCB

شما میتوانید به صورت آنلاین طرح های pcb خود را به صورت تک لایه و چند لایه سفارش دهید.به منظور بهبود کیفیت،تقاضا میشود برای کاهش تقریبی 50 درصدی قیمت و زمان تولید انواع بردهای نمونه (زیر 5000cm مربع) حتی الامکان در قسمت سفارش آنلاین جهت انتخاب رنگ چاپ محافظ ،رنگ سبز و ضخامت برد مدارچاپی،ضخامت 1.6mm را انتخاب نمایید.

بسته های روباتیک

بسته های روباتیک FZA توسط گروه زاگرس الکترونیک با هدف پرورش خلاقیت و شکوفایی استعدادها و همچنین بالا بردن توان علمی و مهارتی افراد، متناسب با هر گروه سنی و تولید برنامه آموزشی متناسب با آن گروه طراحی و ارائه میگردد.FZA با رویکردی جدید و با محصولاتی متنوع به این عرصه وارد شده تا با ایجاد محصولاتی با کیفیت علاقه مندان به این علم را در پیشرفت و شکوفایی یاری بخشد.  

تعیین مقادیر و متغیرها در hspice:

در اسپایس میتوان به متغییرها مقادیر متفاوتی از جمله اعداد اعشاری و یا مقادیر منفی را اختصاص داد.
همچنین میتوان برای هر متغییر یک واحد نیز در نظر گرفت که واحدهای زیر در hspice قابل پذیرش است:

 معرفی المانهای مدار در hspice:

در hspice برای هر المان یک تک کلمه استفاده میشود.برای مثال وقتی بخواهیم پایه های یک ترانزیستور را به سه گره وصل کنیم میباسیت نام ترانزیستور را با حرف M شروع کنیم. ﺍﺳﻢ  ﻫﺮ ﻋﻨﺼﺮ میﺗﻮﺍﻧﺪ ﺩﺍﺭﺍﻱ ۶ ۱ ﻛﺎﺭﺍﻛﺘﺮ ﻣﺨﺘﻠﻒ ﺑﺎﺷﺪ ﻭ ﺍﺯ ﺁﻥ 16 ﻛﺎﺭﺍﻛﺘﺮ ﺣﺮﻑ ﺍﻭﻝ ﺣﺘﻤﺎﹰ ﺑﺎﻳﺪ ﻣﻄﺎﺑﻖ ﺟﺪﻭﻝ زیر ﺍﻧﺘﺨﺎﺏ ﮔﺮﺩﺩ ﺑﻘﻴﻪ ﻛﺎﺭﺍﻛﺘﺮﻫﺎ ﻣﻲ ﺗﻮﺍﻧﻨﺪ ﺷﺎﻣﻞ ﺣﺮﻑ ﻭ ﻋﺪﺩ ﺑﺎﺷﻨﺪ ﻛﻪ ﺑﻄﻮﺭ ﺩﻟﺨﻮﺍﻩ ﺍﻧﺘﺨﺎﺏ ﻣﻲ ﮔﺮﺩﻧﺪ . ﺗﻔﺎﻭﺗﻲ ﺑﻴﻦ ﺣﺮﻭﻑ ﻛﻮﭼﻚ ﻭ ﺑﺰﺭﮒ ﺩﺭ ﺍﺳﻢ ﮔﺬﺍﺭﻱ ﻭﺟﻮﺩ ﻧﺪﺍﺭﺩ.برای مثال اگر چند ترانزیستور داریم میتوان m1 وm2 ... به کار برد.

تعریف مدلهای جدید در hspice:

همواره نیاز است برخی مدلهای جدید ترانزیستور را بر اساس تکنولوژی جدید تعریف نماییم برای این کار hspice به ما اجازه داده است که از دستور .model استفاده کنیم.با این دستور میتوان بر اساس المانهایی که در جدول قبل داریم یک مدل جدید از همان المان را ایجاد کرد:
 
با توجه به فرت بالا میتوان المانهای مختلفی را تعریف کرد و MNAME در این فرمت میتواند هر نام دلخواه شما باشد.در فرمت بالا TYPE را میتوان از جدول زیر انتخاب کرد:
برای مثال پس از قرار دادن یک دیود در مدار میتوان یک مدل جدید برای دیود خود به شکل زیر تعریف کنید:
با این که برای یک ترانزیستور ماسفت مدل n به شکل زیر یک مدل جدید تعریف کرد همانطور که میبینید برای تعریف ترانزیستور ماسفت خواص بسیار زیادی را باید تعریف نمود:

تعریف منبع ولتاژ:

در همه ی پروژه ها برای شبیه سازی نیاز است یک منبع ولتاژ هم داشته باشیم و در hspice همه ی انواع منابع ولتاژ و جریان را میتوان با چند خط برنامه به مدار خود اضافه نمایید:
 که مقدار value میتواند هر مقدار dc یا ac را داشته باشد که در زیر مدلهای مختلف آن ذکر خواهد شد:
 مقدار  میتواند به شکلهای زیر هم باشد:

EXP - exponential waveform

PULSE - pulse waveform

PWL - piecewise linear waveform

SIN - sinusoidal waveform

که هر کدام به شکل زیر به کار میروند و دارای خروجی های زیر هستند و در بساری از پروژه های به کار می آیند:

ایجاد منبع به روش PWL:

در این روش میتوان یک سیگنال دلخواه با هر شکل پاره خطی را ایجاد کرد در واقع سیگنالهای تولید شده به شکل خطی هستند که محورx همان زمان و محور y هم اندازه ولتاژ یا جریان یه هر متغیر دلخواه است. این مدل سیگنالها در برخی تحلیلها لازم میشود. در شکل زیر قرمت و سیگنال تولید شده به روش pwl نشان داده شده است.
 
Units Default Value PWL parameter
second none Tn - time at corner
volt none Vn - voltage at corner
image14006

 تولید شکل موج پالس(PLUSE):

فرمت کلی این دستور به شکل زیر است:
که این مقدار به ترتیب بر اساس جدول زیر معنی های متفاوتی دارند:
PULSE parameter Default Value Units
V1 - initial voltage none volt
V2 - peak voltage none volt
Td - initial delay time 0 second
Tr - rise time Tstep second
Tf - fall time Tstep second
Pw - pulse width Tstop second
Period - pilse period Tstop second
 Pulse Waveform
 در این فرمت موج یک موج با انداره ی v1 تولید و به مدت نصف pw در همان حالت بافی میمیاند و سپس به v2 در زمان tr میرسد که tr همان تاخیر در بالا رقتن سیگنال و tf هم تاخیر در پایین آمدن سیگنال است.در ابتدای کار هم میتوان یک تاخیر کلی ایجاد کرد به انداره ی td .کل ای موج با تناوب pw تکرار خواهد شد.

تولید شکل موج سینوسی:

شکل کلی این دستور به فرمت زیر است:
 که بر اساس جدول زیر میتوان مقادیر را مشخص نمود:
Units Default Value SIN parameter
volt none Vo - offset voltage
volt none Va - peak amplitude of voltage
Hz 1 / Tstop Freq - frequency
second 0 Td - delay time
1 / second 0 Df - damping factor
degree 0 Phase - phase advance
Sinusoidal Waveform
در واقع ولتاژ سینوسی بر اساس فرمول زیر تولید میگردد:
 exponentially-damped sine wave described by this formula
که تمام پارامترهای این فرمول در جدول بالا توضیح داده شده است.
 توجه:
سیگنال سینوسی به شکل بالا فقط برای تحلیل transient به کار میرود و برای تحلیل small-signal باید از دستور دیگری به شکل زیر استفاده کرد که عبارات زمانی در آن نباشد:

 شکل موج نمایی (Exponential Waveform):

فرمت این دستور به شکل زیر است:
 که مقادیر آن بر اساس جدول زیر تعریف میشوند:
 
PULSE parameter Default Value Units
V1 - initial voltage none volt
V2 - peak voltage none volt
Td1 - rise time delay 0 second
T1 - rise time constant Tstep second
Td2 - fall time delay Td1+Tstep second
T2 -m fall time constant Tstop second
Exponential Waveform (EXP)
در جدول بالا میتوان مقادیر را برای مقدار نهایی و پیک در تابع نهایی مشخص کرد.

 شبیه سازی DC در HSPICE :

 در شبه سازی dc یا dc_swept همواره یک مقدار dc را رمپ میدهیم تا از یک مقدار اولیه به مقدار دلخواه برسد و این افزاریش یا کاهش را هر بار روی یک تایع تست میکنیم و یک نمودار خواهیم داشت با همین مقادیر تغییر داده شده.
فرمت کلی این دستور به شکل زیر است:

 مثال برای dc_swept و بدست آوردن wi یک ترانزیستور ماسفت:

در صورتی که بخواهیم یک تقویت کننده با چند ترانزیستور را طراحی کنیم که بر اساس خواسته ی کارفرما یک توان و جریان خاصی را مصرف کند و در خروجی سوینگ خاصی داشته باشد و گین خاصی را بر آورده کند اولین کاری که باید انجام بدهیم چیست؟در اینجا کلمه ی جریان مصرفی همه چیز را مشخص میکند و نکته اصلی در طراحی مدارات ترانزیستور است چرا که جریان کل مدار توان آنرا تایین میکند و همچنین مقاومت خروجی بر اساس جریان میتواند گین را تامین کند ولی سوینگ را خودمان باید با تغییر طراحی بهینه کنیم و به روش قرار دادن ترانزیستورها وابسته است.البته ولتاژ vdd سوینگ را مشخص میکند ولی این ولتاژ وابسته به تکنولوژی است و در هر تکنولوژِی هر چه ترانزیستورها ریزتر باشند ولتاژ vdd را میتوان کمتر در نظر گرفت و تا جایی که تکنولوژی به ما اجازه میدهد میتوانیم کاهش داشته باشیم.حال که مشخص شد جریان همه چیز را مشخص میکند باید جریانهایی که از هر شاخه قرار است عبور کند را خودمان به صورت ذهنی در نظر بگیریم و از آنجایی که کل جریان عبوری از هر شاخه تا پایان شاخه ثابت است باید بگوییم که کل ترانزیستوریهای یک شاخه جریان ثابتی خواهند داشت و در این حالت ترانزیستورها را جدا میکنیم و فرض میکنیم هر ترانزیستور به صورت تکی و تنها همان جریان را از خود عبور میدهد و wi تزانزیستور را بدست می آوریم که آن جریان را تامین میکند.
میخواهیم ترانزیستورهای شکل زیر را با 100 میکرو آمپر جریان طراحی کنیم(فعلاً سوینگ و توان و گین را بحث نمیکنیم):

200px-MOSFET Cascode
برای طراحی ابتدا ترانزستور ها را از هم جدا میکنیم و برای هر کدام  vg را رمپ میکنیم و پس از محاسبه ی vg میتوان wi را هم در رمپ دیگری حساب کرد.از آنجایی که برای عملکرد بهینه باید ترانزیستور در مرز اشباع باشد لذا بر اساس فرمول مرز اشباع یک خط رسم میکنیم و هر جا این خط محور x را قطع کند vg را نشان میدهد.برای این کار باید vg را رمپ کنیم تا به مقداری برسیم که عبارت vd=vg-vth برقرا باشد که همان مرز اشباع خواهد بود که در برنامه ی زیر همین کار را انجام داده ایم:
 m1
 
که در اینجا vg به دست آمده برابر با 0.71 است و این vg را در مرحله بعد مورد استفاده قرار میدهیم.
برای بدست آوردن wi هر ترانزیستور نیز کافی است که به صورت تکی آنرا در یک مدار در hspice ببندیم و با مشخص بودن vd و vs و قرار دادن vg از مرحله ی پیش مقدارwi را رمپ نماییم و هر بار مقدار جریان ترانزیستور را نگاه کنیم با توجه به مقدار جریان ترانزیستور هر گاه این جریان به مقدار مورد نظر رسید در واقع همان wi مورد نظر ما خواهد بود.حال در این مرحله مقدار wi مشخص شده است.برای مثال میخواهیم ترانزیستوری را در جریان 200 میکرو طراحی کنیم w این ترانزیستور به شکل زیر بدست می آید:
در برنامه ی بالا ابتدا نام برنامه سپس با دستور .protect از نمایش مطالب اضافی در خروجی برنامه جلو گیری کرده ایم و در خط5 ام برنامه option post  را باید معیین کنیم تا خروجی برنامه مشخص گردد که به معانی زیر است:
 البته option post یا post  با هم تفاوتی ندارند.در خط 6 و 7 ولتاژ گره های مختلف را تعیین میکنیم و در خط 8 ام عبارت .param wi=4.67u در واقع wi را به عنوان یک پارامتر تعیین میکند.و در خط بعد ترانزیستور را معرفی میکینم ولی w آنرا متغییر در نظر گرفته تا آنرا رمپ دهیم.حال در خظ بعد با عبارت .DC wi 1u 100u 0.1u طول ترانزیستور را رمپ میدهیم و پس از آن در عبارت .PROBE dc i1(M1) نمودار جریان m1 را رسم میکنم تا ببینم با تغییر w خروجی چگونه خواهد بود و هر جا این جریان 200 میکرو آمپر بود wi را همان در نظر میگیریم شبیه به نمودار زیر:
m11
که در اینجا w=4.67 خواهد بود.حال که w را حساب کردیم و در مرحله ی پیش هم vg را محاسبه نمودیم و در اینجا طراحی ترانزیستور به صورت تکی به پیایان رسیده است.
تک تک ترانزیستور ها را به صورت تکی به همین نحو طراحی میکنیم و دست آخر آنها را دو تا دوتا و پس از آن سه تا سه تا و... به هم متصل میکنیم.
نکته:در صورتی که پس از اتصال جریان درست نبود باید w ترانزیستورهای P-Channel را تغییر دهیم نه ترانزیستورهای نوع n-Channel را چون ضریب جریان برای نوع p کوچکتر از نوع n است و تاثیر کمتری بر تغییر حریان خواهد داشت.
در فرصت بعدی سعی میکنم طراحی مدارت آپ امپ و تفاضلی و کسکد رو آموزش بدم و در مورد توان و گین و سوینگ و داینامیک رنج صحبت کنیم....

نظرات کاربران

مجموع رتبه (2)

کاربرانی که در این گفتگو شرکت کرده اند

بارگذاری نظرات قدیمی تر
  • سلام خسته نباشید
    ببخشید در نرم افزار hspice چطور دو سیگنال نمایی و سینوسی را درهم ضرب کنم؟
    ممنون میشم بهم سریعتر جواب بدید

  • مهمان - yas

    سلام وخسته نباشید. hspice ترانزیستورنانولوله کربنی رو نمیشناسه. باید کتابخانه اضافه بشه. من هم کتابخانه رو دانلود کردم. منتها هرچه که به lib در جایی که hspice را نصب کردم اضافه میکنم به نتیجه نرسیدم و برنامه جواب نمیده. خواهش میکنم اگر درمورد اینکه چجوری کتابخانه hspice رافعال کنم چیزی میدونید کمکم کنید چیزی به دفاع نمونده:گریه:
    پیش پیش بسیار ممنونم

  • سلام ... مشکل بزرگ من انتخاب سایز ترانزیستورها در مدارات تفویت کننده بزرگ است که مسایل زیادی از جمله نویز ..بهره فرکانسی و غیره مطرح می باشد چطورمی توان براین مشکل غلبه کرد من الان بشدت با یک مدار ota درگیر هستم

  • سلام خسته نباشید میشه لطفا مدلی برای jfet قرار بدید؟؟؟

  • چیشو قرار بدم؟توی hspice برای مدلش NJF | PJF به کار میره:خوب:

نظر خود را اضافه کنید.

ارسال نظر به عنوان مهمان

0
نظر شما به دست مدیر خواهد رسید
شرایط و قوانین.

در باره ما

ما معتقدیم هیچ کاری بدون همکاری گروهی به نتیجه نمی رسد. از این رو کاربران خود را به مشارکت برای رسیدن به بهترین سایت نرم افزاری دنیای اینترنت دعوت می کنیم.ما می خواهیم کاربران خود را شناسایی کنیم و به آنهایی که پیشرفت سایت برایشان مهم است خدمات بهتری ارائه کنیم.

الکترونیکا چگونه کار می کند؟

سعی در ارائه همه فایلها به صورت لینک مستقیم پرسرعت داشته است.
ما بهترین نرم افزارها و پروژه های تست شده را انتخاب کرده ایم نه هر نرم افزاری با هر کیفیتی.
ما همه فایلها را تست کرده و در سایت می گذاریم. مگر موارد بسیار نادر که به آنها مطمئن هستیم.
بخشی به نام درخواست نرم افزار برای سایر نرم افزارهای مورد نیاز طراحی کرده ایم.
همیشه در بخش ارتباط با ما در حداقل زمان پاسخگو بوده ایم.

ایده های خودتون رو به ما بسپارید

 

طراحی پروژه های دانشجویی وصنعتی با بهترین کیفیت