فهرست مطالب 
----------------------------------------------------------------------------- 
پروژه 
نمايشگر هرمي 
ويرايشگرگرافيكي و سمبلي 
ويرايشگر متني 
ويرايشگر شكل موج 
ويرايشگر Floorplan 
مراحل طراحي در  MAX+PLUS II 
شروع كار با  MAX+PLUS II 
مثال طراحي : جمع كننده كامل تك بيتي 
ايجاد يك پروژه جديد 
ايجاد فايل شماتيك 
قرار دادن قطعات لازم در فايل شماتيك 
نكته هاي مهم مرتبط با نامگذاري گره ها و پين ها 
تعيين نوع  PLDمورد نظر 
ذخيره سازي و بررسي سالم بودن اتصالات 
كامپايل كردن پروژه 
شبيه سازي پروژه 
بررسي PLD با استفاده از  Floorplan Editor 
تحليل زماني 
ايجاد سمبل از فايل طراحي شده 
خطوط باس 
بايگاني پروژه 
Ø     پیش گفتار : 
  
كمپاني  Altera  نرم افزار   MAX+PLUS II را در سال 1991 براي طراحي ، شبيه سازي و برنامه نويسي قطعات منطقي قابل برنامه نويسي   (PLD) خود توليد كرد. 
اگر چه  Altera  پيش از اين ، نرم افزارهاي ديگري نيز عرضه كرد هبود ، اما سادگي و درعين حال توانايي بالاي  MAX+PLUS IIباعث شده كه همچنان جايگاه خود را به عنوان نرم افزاري پرقدرت و در عين حال بسيار ساده حفظ كند. 
در اين راهنما با MAX+PLUS II آشنا خواهيد شد و روشهاي طراحي ، شبيه سازي و برنامه نويسي PLD ها را فراخواهيد گرفت.  اما لازم است بدانيد كه در اينجا به هيچوجه نم يتوان به تمامي قابليت هاي MAX+PLUS II و تمامي تكنيك هاي طراحي مدارهاي منطقي اشاره كرد. در حقيقت اين راهنما به عنوان نقطه شروع و محرك اوليهاي است كه شما را با بخش هاي اصلي MAX+PLUS II   آشنا مي كند.  شما مي توانيد با انجام طراحي هاي مكرر و در عين حال    Help كامل اين نرم افزار ، مهارت كافي را بدست آوريد . پيش از استفاده از اين نرم افزار و نرم افزارهاي مشابه ، نخستين چيزي كه بايد مورد توجه قرار گيرد پشتيباني نرم افزار از انواعPLD   است.  چرا كه ممكن است نوع PLD  مورد نظر در اين محدوده قرار نگيرد . 
  
از جمله مواردي كه باعث مي شود  MAX+PLUS II  به عنوان نرم افزاري قدرتمند شناخته شود ، قابليت هاي زير مي باشند : 
•  دارا بودن سه روش طراحي : 
Graphic Editor 
Waveform Editor 
Text Editor 
•  تفكيك اجزاي طرح  Design Partitioning 
Floorplan Editor • 
 • سنتز منطقي قوي 
 • شبيه سازي كار كردي و زمانيFunctional and Timing Simulation 
 • تجزيه و تحليل زماني دقيق 
 • خطا يابي خودكار 
•  اجراي پروژه هايVHDL ،AHDL و Verilog HDL 
 • خواندن فايل هاي شماتيك   OrcadوNetlist  های  Xilinx 
در كار با  MAX+PLUS II و اصولا نرم افزارهاي پيچيده ، بسيار بهتر است كه از همان ابتدا كار خود را به صورت كاملا حساب شده و منظم شروع كنيد چرا كه با مشكلات و خطاهاي كمتري مواجه خواهيد شد. 
بنابراينپيشازشروعكاربهتراستبامواردزيرآشناشويد: 
  
Ø     پروژه : 
پروژه در بردارنده تمامي فايل هاي مرتبط با يك طراحي مشخص ، شامل فايل هاي طراحي هاي زيرين و فايل هاي فرعي توليد توسط كاربر و يا برنامه مي باشد. 
نام پروژه مشابه با نام سطح بالاترين فايل طراحي شده در پروژه ( بدون پسوند آن ) است. 
MAX+PLUS II  عمليات كامپايل ، شبيه سازي ، تحليل زماني و برنامه نويسي را فقط بر روي يك پروژه در هر لحظه مي تواند انجام دهد. 
به ياد داشته باشيد كه MAX+PLUS II اين عمليات را تنها برروي فايل هايي كه به عنوان پروژه مشخص شده اند انجام مي دهد. 
مثلا يك طرح شماتيك را تا وقتي كه به عنوان پروژه مشخص نكرده ايد ، نمي توانيد شبيه سازي كنيد. 
  
Ø     نمايشگر هرمي : 
پروژه و كليه فايل هاي مرتبط با آن ، بسته به نوع ارتباطشان با يكديگر در اين نمايشگر به صورت ساختار درختي نمايش داده مي شوند و به كاربر اين امكان را مي دهند كه به سادگي مراحل شكل گيري پروژه را از ابتدا تا انتها در يك صفحه مرور نمايد. 
همچنين مي توان به هر يك از فايل ها ي پروژه از پايين ترين تا بالاترين سطحشان با كليك كردن برروي شكل آن دسترسي پيدا كرد كه اين امكان در پروژه ها ي حجيم و با تعداد فايل زياد بسيار موثر است . 
  
Ø     ويرايشگر گرافيكي و سمبلي : 
ويرايشگر گرافيكي به كاربر امكان طراحي مدارهاي منطقي به صورت شماتيك و با استفاده از قطعات قرار داده شده در   Libraryبرنامه را مي دهد . 
  
File Extensions: .gdf, .sch 
  
ويرايشگر سمبلي به كاربر امكان ايجاد سمبل هاي دلخواه و يا ويرايش سمبل هاي موجود در library برنامه را مي دهد . 
File Extension: .sym 
  
شما مي توانيد هر يك از سه نوع فايل طراحي خود با هر مقدار پيچيدگي را به راحتي تبديل به يك سمبل كوچك با ورودي و خروجي هاي مشخص شده توسط خودتان بكنيد و سپس در هر جاي برنامه و در هر پروژه شماتيكي به كار ببريد.  شيوه انجام اين كار مزاياي آن را به زودي خواهيد ديد. 
  
Ø     ويرايشگر متني : 
براي ايجاد فايل هاي Verilog HDL  ، VHDL و AHDL به كار مي رود . 
File Extensions: .acf, .aco, .adf, .cmd, .edc, .edf, .fit, .hst, .lmf, .log, .mif, 
.mio, .mtf, .plf, .rpt, .sdo, .smf, .tao, .tbl, .tdf, .tdo, .tdx, .ttf, .v, .vec, .vhd, 
.vho, .vmo, .vo, .xnf 
  
Ø     ويرايشگر شكل موج : 
اين ويرايشگر توانايي انجام دو كار را دارد  : 
1-       به عنوان ابزاري براي طراحي مدارهاي منطقي 
2-       به عنوان ابزاري براي شبيه سازي طرح كامپايل شده 
  
نحوه طراحي با اين ويرايشگر به اين صورت است كه كاربر دست هاي از شكل موج هاي ورودي را به آن داده و متناظر با آنها شكل موج هاي خروجي دلخواه خود را وارد مي كند. برنامه در حين اجرا ، اين طرح را مانند بلوكي در نظر مي گيرد كه مشحصات سيگنال هاي ورودي و خروجي متناظر با آن سيگنال ها داده شده است و مطابق با ورودي هاي طرح كه مي تواند به طور مثال خروجي ساير عناصر مدار باشد، خروجي هاي آن را به دست مي آورد. در پايان اين راهنما ، اين موضوع را بررسي خواهيم كرد . 
File Extensions: .scf, .wdf 
  
Ø     ويرايشگر    Floorplan: 
براي تعيين كردن منابع فيزيكي PLD و يا ديدن جزء بندي هاي صورت گرفته توسط كامپايلر و نتايج fitting از اين ابزار استفاده مي شود . 
در ادامه ، به علت مشابهت لغات انگليسي با منوها و ساير قسمت هاي  MAX+PLUS II از آن ها به جاي معادل فارسيشان استفاده خواهد شد  . 
براي فراگيري نحوه طراحي مدارهاي منطقي با ، MAX+PLUS II استفاده از مثال مي تواند ساده ترين و سريعترين راه ممكن باشد. اگر در اينجا تلاش شود كه كليه بخش هاي مورد نياز در حد اين راهنما را با توضيح نظري آن و بدون ديدن نحوه عملكرد آن در جريان كار طراحي بيان كرد ، احتمالا در پايان مهارت عملي كسب نخواهيد كرد. بنا بر اين استفاده از اين راهنما بدون تعقيب كليه مراحل طراحي مثال ها با كامپيوتر ، چندان مفيد نخواهد بود . 
  
Ø     مراحل طراحي در  MAX+PLUS II : 
  
1-      ايجاد فايل جديد طراحي و يا مجموعه اي از فايل هاي طراحي كه مي تواند از هر سه نوع آن تشكيل شود در يك ساختار هرمي . 
2-      تعيين نا مسطح بالاترين فايل طراحي به عنوان نام پروژه . 
وقتي شروع به طراحي جديدي مي كنيد ، براي كامپايل آن ، پروژه جديدي ايجاد كنيد و يا فايل طراحي جديد خود را با استفاده از File > Project > Set Project to Current File به پروژه جديدي تبديل كنيد . 
  
3-      تخصيص يك ياز خانواده هاي PLD ها براي پروژه.  ميتوان انتخاب PLD مناسب از خانواده 
تعيين شده را به عهده كامپايلر گذاشت و يا اين كه دقيقا مدل آن را تعيين كرد . 
4-      -4 كامپايل كردن طرح پس از اتمام طراحي . 
  
در صورت موفقيت آميز بودن فرآيند كامپايل ، مي توان پروژه را شبيه سازي كرد. براي شبيه سازي ابتدا بايد فايل جديدي از نوع  Waveform Editor  و با پسوند .scf ايجادكرد. جزئيات اين كار در بخش هاي بعدي گفته خواهد شد .
  
5-      برنامه نويسي . PLD 
  
در اين راهنما فرصت پرداختن به تمام امكانات  MAX+PLUS II  نيست. اما سعي مي شود مهمترين بخش 
هاي اين نرم افزار و همچنين تكنيك هاي طراحي مدار هاي منطقي با استفاده از اين نرم افزار ارائه شود . 
از اين پس ساير بخش هاي مورد نياز  MAX+PLUS II در قالب مثال هاي يا رائه مي شود كه از طرحي ساده 
 شروع شده و با طرح پيچيده تري پايان مي يابد. در طول اين مثال ها تا حد ممكن سعي شده است كه مراحل 
طراحي ، با استفاده از شكل مشخص شوند كه مي تواند تا حد زيادي باعث كاهش خطا و اطمينان از روند طراحي شود . 
براي بدست آوردن اطلاعات بيشتر و كاملتر در مورد كليه اجزا و قابليت هاي MAX+PLUS II به Help آن مراجعه كنيد. 
با كليك كردن برروي آيكن maxstart.exe  نرم افزار را اجرا كنيد. 
شايد اولين چيزي كه به نظرتان ميرسد رابط كاربري گرافيكي (GUI) MAX+PLUS II است كه در مقايسه با نرم افزارهاي مشابه ، بسيار ساده به نظر مي رسد.  محيط  MAX+PLUS II  به قدري ساده است كه در نظر اول خبر از موتور قدرتمندي كه درون آن است ، نمي دهد. اين يكي از ويژگي هايي است كه پس از پايان اين راهنما متوجه آن خواهيد شد. 
منوي  MAX+plus II  در گوشه سمت چپ را باز كنيد.  در اين منو بخش هاي اصلي نرم افزار قرار دارد كه در مراحل مختلف مي توانند به كار روند. پيش از اين با برخي از آن ها آشنا شده ايد. 
  
  
Ø     جمع کننده کامل یک بیتی : 
تابع بول مربوط به اين مدار به صورت زير است : 

اين مدار را در محيط شماتيك و با استفاده از گيت هاي موجود در  library  برنامه مي سازيم و سپس براي ديدن نحوه عملكرد آن ، آن را شبيه سازي مي كنيم . 
بنا بر اين مراحل زير را بايد انجام دهيم : 
1-     پروژه جديدي بسازيم.  پس از اين ، هر فايل جديد جز و زيرشاخه هاي پروژه به حساب مي آيد . 
2-     فايل جديدي از نوع شماتيك ايجاد كنيم . 
3-     قطعات مورد نياز را در صفحه و در محلهاي مناسب قرار دهيم . 
4-     اتصالات بين قطعات را بر قرار كنيم . 
5-     پروژه را كامپايل كنيم . 
6-     با استفاده از  Waveform Editor  آن را شبيه سازي كنيم . 
شايد اين مراحل در ابتدا كمي طولاني به نظر برسند. اما به زودي خواهيد ديدكه اين مثال را به سرعت به پايان خواهيم رساند. 
  
Ø     ايجاد يك پروژه جديد : 
مراحل زير را دنبال كنيد : 
( يعني به منوي  File برويد و از آنجا گزينه  Project و سپس Name …  را انتخاب كنيد . ) 
File > Project > Name… 
Shortcut: Ctrl+j 
در پنجره Project Name , دايركتوري مورد نظرتان را انتخاب كنيد و سپس نام پروژه را وارد كنيد . 
مثلا نام پروژه را fa بگذاريد.  پروژه جديد شما به طور پيش فرض در دايركتوري  projects ذخيره مي شود  . 
  
Ø     ايجاد فايل شماتيك : 
Max+plus II > Graphic Editor یا File > New … و انتخاب Graphic Editor file با پسوند .gdf 
نام فايل جديد را fa.gdf بگذاريد : 
File > Save As … و در قسمت File Name نام مورد نظر را وارد كنيد . 
  
Ø     قرار دادن قطعات لازم در فايل شماتيك : 
طرح ما نياز به دو گيت  ,XOR دو گيت  AND و يك گيت OR دارد . در جاي مناسبي از صفحه كليك راست كنيد و از منو گزينه Enter Symbol … را انتخاب كنيد. به جاي اينكار مي توانيد از double click هم استفاده كنيد . 
در قسمت  Symbol Libraries دايركتوري هاييكه برنامه به طور پيش فرض در آن جا به دنبال سمبل مي گردد قرار دارد . 
شما مي توانيد با انتخاب آنها و سپس جستجوي سمبل مورد نظر از قسمت  Symbol Files آن را انتخاب كنيد. 
البته راه به مراتب ساده تر ، نوشتن نام سمبل مورد نظر است كه اين درصورتي است كه نام سمبل تعيين شده در برنامه را بدانيد . 
ما راه دوم را انتخاب مي كنيم.  بنابراين در قسمت Symbol Name تايپ كنيد : “ xor ” و سپس OK را فشار دهيد. 
مشابه همين كار را براي وارد كردن سمبل AND و OR انجام دهيد.  اين بار به ترتيب تايپ كنيد:  "2and" و  ”2.“ or 
چون ما به دو گيت AND و دو گيت XOR احتياج داريم ، بايد از هر كدام از آن ها يكيديگر را نيز در طرح قرار دهيم . 
براي اين كار گيت  XOR  را از صفحه شماتيك انتخاب كنيد و سپس دكمه  Ctrl را نگهداريد و ماوس را به سمت پايين بكشيد و در جاي خالي اي از صفحه ، رها كنيد.  نظير همين كار را براي گيت  AND انجام دهيد . 
با جابجايي گيت ها ، آنها را به صورت شكل زير در آوريد . 
براي مشخص كردن سيگنال هاي ورودي و خروجي از پرت هاي ورودي و خروجي استفاده مي كنيم.  شما در هر طراحي اي كه انجام مي دهيد، بايد سيگنال هاي ورودي و خروجي را مشخص كنيد.  براي اين منظور سمبل هاي INPUT و OUTPUT را با تايپ “ input ” و “ output ” در بخش Symbol Name وارد طرح كنيد. چون سه ورودي و دو خروجي داريم ، مانند تكنيكي كه در مورد گيت ها به كار برديم ، سه ورودي و دو خروجي بسازيد و سپس با  double click برروي بخش “ PIN_NAME ” نام آن ها را مانند شكل تغيير دهيد. 
در اين مرحله بايد اتصالات لازم را برقرار كنيم . 
اين درست همانجايي است كه با يكي از قابليت هاي با ارزش MAX+PLUS II آشنا خواهيد شد. 
MAX+PLUS II براي اتصال بين سمبل ها دو روش در اختيار شما مي گذارد : 
1-     اتصال با سيم 
2-     اتصال با استفاده از نام گذاري سيم ها 
  
اتصال با سيم : 
در اين روش پين هاي ورودي و خروجي گيت ها به وسيله سيم هايي به يكديگر متصل مي شوند . 
نشانگر ماوس را نزديك يكي از پين ها بكنيد.  متوجه خواهيد شد كه شكل آن بصورت + در مي آيد.  اين به معني آماده بودن برنامه براي رسم سيم است.  لازم است بدانيد كه در MAX+PLUS II مي توانيد از خطوط با سهم استفاده كنيد كه از طريق آن مي توانيد مجموعه اي از سيم ها را انتقال دهيد.  بنابراين ابتدا بايد مشخص كنيدكه قصدكشيدن سيم داريد يا باس . 
براي اين منظور مراحل زير را انجام دهيد : 
Options > Line Style > و انتخاب اولين نوع سيم خط پررنگ مربوط به باس است . 
نحوه رسم و مشخص كردن خطوط باس در بخش هاي بعد خواهد آمد . همين كار را مي توانستيد پس ازكشيدن سيم ، با كليك راست روي آن و انتخاب LineStyle انجام دهيد . 
  
اتصال با استفاده از نام گذاري سيم ها : 
يكي از قابليت هاي مفيد  MAX+PLUS II استفاده از نام براي اتصال بين قطعات به جاي رسم خطوط بين آنهاست.  نحوه اين كار به اينصورت است كه مثلا نام يكي ازسيم ها را a  مي گذاريم. اكنون اگر در هر قسمت از طرح همين نام را به سيم ديگري اختصاص دهيم ، عملا اين دو سيم را به هم متصل كرده ايم. اين روش به ويژه در طراحي هاي پيچيده و بزرگ كه تعداد سيم ها و خطوط باس باعث شلوغ شدن طرح مي شود بسيار مفيد است. 
  
  
Ø     نكته هاي مهم مرتبط با نامگذاري گره ها ) سيم ها  (و پين ها : 
براي نامگذاري گره ها و پين ها ، قوانين زير را رعايت كنيد : 
1-     نام آنها حداكثر مي تواند 32 كاراكتر نام داشته باشد.  كاراكتر هاي نام حروف A  تا Z  و a تاz  . 0 تا 9 , - ,  _  ,هستند. 
2-     نبايد فاصله ميان نام آن ها باشد . فاصله گذاشتن قبل و بعد از نام ، تاثيري ندارد . 
3-     نام پين ها بايد منحصر به خودشان باشد.  يعني هيچ دو پيني در يك فايل طراحي نمي توانند نام يكسان داشته باشند. 
4-     هرگره اي كه به باس متصل مي شود بايد نامگذاري شود . 
5-     گره متصل به پين ورودي ، بايد نام مشابه با نام پين داشته باشد. 
6-     گره اي كه بيش از يك پين خروجي را تغذيه مي كند ، نمي تواند نام داشته باشد . 
7-     گره اي كه يك پين ورودي به عنوان مبدا و يك پين خروجي به عنوان مقصد داشته باشد ، نمي تواند نام گذاري شود . 
  
براي تغيير نام گره ها ، از عنصر  WIRE استفاده كنيد . 
  
در حقيقت  MAX+PLUS II در فرآيند كامپايل كردن ، هيچ تفاوتي بين اتصال با استفاده از سيم و اتصال با استفاده از نام نمي گذارد . 
در اين مثال از روش اول ( اتصال با سيم ) استفاده خواهيم كرد.  روش دوم را بعدا خواهيم ديد . 
با قرار دادن نشانگر ماوس روي پين هاي مربوطه ، نگهداشتن دكمه سمت چپ آن ، كشيدن آن تا پين مقصد و رها كردن دكمه ماوس ، اتصالات را انجام دهيد. 
  
  
Ø     تعيين نوع PLD مورد نظر   Assign Device: 
پيش از كامپايل كردن پروژه ، بايد نوع PLD مورد نظرتان را مشخص كنيد.  زيرا برنامه متناسب با PLD انتخابي ، عمليات كامپايل پروژه را انجام خواهد داد.  انتخاب PLD به عوامل متعددي مانند تعداد پايه هاي مورد نياز ، ميزان تاخير بين اجزاي آن ، توان مصرفي ، حجم اشغال شده توسط آن ، قيمت و ... بستگي دارد . 
براي اين مدار ساده و كوچك ، از قطعه Classic  استفاده خواهيم كرد . 
اين مراحل را انجام دهيد : 
Assign > Device …  از قسمت Device Family نوع CLASSIC و از قسمت AUTO ،Devices را انتخاب كنيد . 
در اين حالت ، كامپايل را به طور خود كار قطعه مناسب را از خانواده تعيين شده انتخاب مي كند . 
  
Ø     ذخيره سازي و بررسي سالم بودن اتصالات Save & Check  : 
با انجام اين عمل ، فايل هاي طراحي شده ذخيره مي شوند و پروژه از نظر صحت اتصالات و خطاهاي اساسي ، بررسي خواهد شد . 
File > Project > Save & Check 
Shortcut: Ctrl+K 
پس از اين كار ، صفحه مربوط به فرآيند كامپايل ظاهر خواهد شد.  اولين مرحله اي كه در اين فرآيند صورت مي گيرد ،همواره همين خواهد بود. 
ولي چون فقط مي خواهيم پروژه را از نظر خطاهاي اوليه بررسي كنيم ، پس از اجراي اولين مرحله ، فرآيند متوقف خواهد شد. توجهكنيدكهفرآيندكامپايلكردنبايدبدونخطاپايانپذيرد. در صورت وجود هرگونه خطا كه با رنگ قرمز در پنجره  Messages ظاهر خواهد شد ، عمليات متوقف خواهد شد . 
  
  
Ø     كامپايل كردن پروژه  Compiling           : 
پس از كامپايل كردن پروژه بقيه امكانات MAX+PLUS II قابل استفاده خواهند بود. براي كامپايل كردن پروژه خود يكي از مراحل زير را انجام دهيد : 
MAX+plus II > Compiler 
پس از اين كار ، پنجره Compiler  ظاهر خواهد شد.  روي دكمه  start كليك كنيد. مشاهده مي كنيد كه مراحل مختلف فرآيند كامپايل به ترتيب انجام خواهند شد. در مورد اين پروژه ، اين فرآيند به سرعت پايان خواهد يافت . 
پس از پايان عمليات كامپايل ، گزارش كاملي از تعداد پين هاي ورودي و خروجي به كار رفته به همراه نحوه قرار گرفتن ورودي ها و خروجي هاي طرح بر روي پايه هاي PLD و ساير اطلاعات مفيد توسط برنامه تهيه خواهد شد . 
براي ديدن اين گزارش ، روي علامت قرار گرفته در زير بلوك  Fitter دو بار كليك كنيد . 
  
Ø     شبيه سازي پروژه  Simulation            : 
قبلا گفتيم كه براي شبيه سازي پروژه احتياج به ابزاري براي مشخص كردن ورودي هاي دلخواهمان و ديدن خروجي هاي متناظر با آن ها داريم.  ما اين كار را با ايجاد فايل جديدي از نوع Waveform  و با پسوند   .scfانجام خواهيم داد.    بنابراين : 
 File > New … و انتخاب  Waveform Editor file با پسوند  .scf 
اكنون مي خواهيم ورودي و خروجي هاي طرحمان را براي شبيه سازي وارد Waveform Editor  كنيم  . 
ما مي توانيم اينكار را به دو راه انجام دهيم : 
1-     با وارد كردن نام گره يا پرت در ستون   : Name 
Node > Insert Node … 
Shortcut: Double Click 
با اين كار پنجره  Insert Node ظاهر مي شود  . 
  
2-     با وارد كردن گره ها و پرت ها از طريق روش زير : 
Node > Enter Nodes from SNF … 
با انتخاب اين گزينه ، پنجره  Enter Nodes from SNF ظاهر خواهد شد. نوع گره هاي مورد نظر را از قسمت Type تعيين كنيد و سپس دكمه  List را فشار دهيد. در ليست ظاهر شده مي توانيد مجموعه اي از گره ها و يا تك تك آن ها را انتخاب كنيد. قابليت انتخاب مجموعه اي از گره ها ، تفاوت اين روش با روش قبل است . 
براي اين مثال تمامي گره ها را از قسمت  GroupsAvailable Nodes &  بگيريد. سپس با زدن دكمه آن ها را براي وارد كردن در فايل انتخاب كنيد. 
بازدند كمه OK گره هاي انتخابي وارد  Waveform Editor مي شوند . اين فايل را با نام  fa.scf ذخيره كنيد. 
براي شبيه سازي ، بايد نام فايل Waveform Editor با نام فايل طراحي مشابه باشد تا اين دو فايل به هم مربوط شوند. 
توجه كنيد كه با انتخاب گزينه ،Save As نام فايل به طور پيش فرض  fa.scf است . 
  
  
Ø     بررسي PLD با استفاده از  Floorplan Editor : 
كامپايلر MAX+PLUS II مراحل گوناگوني را در هنگام كامپايل كردن انجام مي دهد.  در مرحله ،Fitter كامپايلر نحوه چيده شدن اجزاي طرح در داخل PLD را با توجه به ظرفيت ، تعداد پايه ها و عوامل ديگر تعيين مي كند . 
Floorplan Editor ابزاري براي بررسي اين موضوع در داخل قطعه مي باشد كه قادر به نمايش مسيرهاي گوناگون 
بين اجزاي طرح همچون گيت ها ، تاخير ميان آن ها و ... مي باشد. 
براي اجراي Floorplan Editor يكي از روش هاي زير را انجام دهيد : 
MAX+plus II >Floorplan Editor 
پس از باز شدن محيط ، Floorplan Editor در جاي خالي از صفحه دوبار كليك كنيد تا نمايي از قطعه  Classic را از بالا ببينيد.  در اين نما ، پايه هايي كه به ورودي ها و خروجي هاي مدار  ما اختصاص يافته ، با رنگ آبي روشن مشخص شده است. همچنين ساير پايه هايي كه به منبع تغذيه و زمين متصل خواهند شد ، نيز مشخص شده اند. 
با دو بار كليك كردن ، مجددا به حالت قبل باز گرديد. در اين حالت مي توانيد بلوك هاي اختصاص يافته در قطعه را مشاهده كنيد.  برروي بلوك آبي رنگي كه به پايه S متصل شده است كليك كنيد . 
  
سپس دكمه را فشار دهيد. اين دكمه باعث مي شود كه كليه ورودي ها به بلوك مورد نظر به همراه منابع شان ، مشخص شوند.  حال پين Y را انتخاب كنيد و دكمه را فشار دهيد. اينبار خروجي هاي پين مورد نظر نمايان مي شوند . 
  
ملاحظه مي كنيدكه پين ورودي Y هيچ ورودي اي ندارد ( توجه كنيد كه هنوز دكمه فعال است ) . 
  
از محيط Floorplan Editor خارج شويد . 
  
  
  
Ø      تحليل زماني Timing Analyzer : 
  
بوسيله يكي از روش هاي زير وارد محيط  Timing Analyzer شويد   : 
  
MAX+plus II > Timing Analyzer 
  
با روش زير گره هاي دلخواهتان را مشخص كنيد : 
  
Node > Timing Analysis Source … 
  
Node > Timing Analysis Destination … 
  
در هر مورد ، مشابه با بخش مربوط به وارد كردن سيگنال ها در Waveform Editor عمل كنيد . 
  
دكمه start را فشار دهيد . 
  
عدد نوشته شده در هر خانه ، زمان تاخير موجود ميان منبع مشخص شده در سطر و مقصد مشخص شده در ستون آن خانه را نشان مي دهد . 
همچنين مي توانيد با انتخاب خانه مورد نظر و زدن دكمهList paths ، ليستي از مسيرهاي موجود بين منبع و مقصد را بدست آوريد.  برنامه به طور پيش فرض طولاني ترين مسير را نشان ميدهد. اگر مي خواهيد كليه مسير ها را ببينيد، به منوي Options برويد و گزينه List Only Longest path را غير فعال كنيد. 
  
سپس يكي از مسيرها را از پنجره  Messages انتخاب كنيد و دكمه locate  را فشار دهيد. اگر مسير بيش از يك قسمت داشته باشد ، بايد چندين بار به طور پياپي اين دكمه را فشار دهيد . 
  
در اين مثال قصد داريم كه جمع كننده تك بيتي خود را به يك جمع كننده چهار بيتي تبديل كنيم . 
  
ما اينكار را با قرار دادن چهار جمع كننده تك بيتي در كنار هم انجام مي دهيم. براي اين كار مي توانيم از مدار طراحي شده خود ، به تعداد سه عدد ديگر نيز كپي كنيم و كنار آن بگذاريم. اما راه حل به مراتب ساده تري در  MAX+PLUS II پيش بيني شده است. بدين صورت كه ما ميتوانيم از هر نوع فايل طراحي ، بلوكي تهيه كنيم كه داراي ورودي و خروجي هاي مشخص شده در طراحي باشد.  با اين روش ديگر نيازي به وارد كردن كل طرح در داخل فايل ديگري نيست . 
  
بلكه مي توان بلوك ساخته شده با نام همان فايل را در طراحي هاي بعدي وارد طرح كرد. همچنين با اين روش مي توانيد library هاي دلخواهتان را خودتان بسازيد.  نگران نباشيد چرا که MAX+PLUS II با انتخاب تنها يك گزينه ، اينكار را براي شما انجام خواهد داد . 
  
فايل fa.gdf را باز كنيد.  اين فايل محتوي جمع كننده كامل تك بيتي با سه ورودي و دو خروجي است . 
  
بنابراين انتظار داريم كه سمبلي بلوكي با سه ورودي و دو خروجي داشته باشيم. در حقيقت هدف ما ساختن يك مستطيل كوچك با سه ورودي  cin , x , y و دو خروجی s , cout است كه كليه خواص مدار طراحي شده ما را داشته باشد و بتواند در هر طراحي شماتيكي كه بعدها انجام مي شود ، استفاده شود و نقش جمع كننده تك بيتي را اجرا كند . 
  
  
Ø     ايجاد سمبل از فايل طراحي شده : 
  
مطمئن شويد كه فايل fa.gdf باز و فعال است و سپس گزينه زير را انتخاب كنيد : 
  
File > Create Default Symbol 
  
با اين كار سمبل جديدي با نام  fa.sym در داخل دايركتوري پروژه ساخته مي شود . 
  
لازم به ذكر است كه ما مي توانيم همين كار را با استفاده از  Symbol Editor انجام دهيم. اما در اين حالت بايد شكل سمبل و محل قرار گرفتن پين هاي آنرا خودمان انتخاب كنيم. چون ما در اينجا نيازي به اين كار نداريم و در واقع چيزي را ازدست نم يدهيم ، از ذكر آن خود داري ميكنم . در مثال بعدي ، اهميت وجود چنين قابليتي را خواهيم ديد. 
  
  
Ø     جمع کننده کامل 4 بیتی : 
  
فايل جديدي از نوع شماتيك بسازيد و نام آن را  fa.gdf4 بگذاريد.  ما مي توانيم با انتخاب گزينه زير ، پروژه جديدي با نام همان فايل طراحي (در اينجا fa4 ) بسازيم : 
  
  
File > Project > Set Project to Current File 
  
سپس با دوبار كليك كردن در جاي خالي از صفحه شماتيك ، پنجره  Enter Symbol را باز كنيد. نام سمبلي كه ساخته ايد ( fa ) را بنويسيد و OK را فشار دهيد . 
  
مي بينيد كه جمع كننده كامل تك بيتي اي كه طراحي كرده ايد ، به شكل يك مستطيل كوچك و با همان كار كرد در آمده است و به شما امكان مي دهد كه در هر طراحي ديگري از آن استفاده كنيد ! 
بر روي سمبل fa دوبار كليك كنيد.  مداري كه نمايش داده مي شود ، همان جمع كننده شماست . 
ما براي طراحي خود نياز به چهار سمبل fa داريم. آن ها را وارد طرح كنيد . در اين طرح دو ورودي و يك خروجي چهار بيتي خواهيم داشت كه بهتر است از خطوط باس به جاي سيم هاي مجزا استفاده كنيم.  بنابراين با خطوط باس و نحوه نام گذاري آن ها ، اشنا خواهيد شد . 
  
  
Ø     خطوط باس  BUS : 
  
باس مجموعه اي از سيم هاست كه در  MAX+PLUS II  تعداد آن ها محدوديتي ندارد . 
  
اما براي شبيه سازي و استفاده از شكل موج ، مي توانند حداكثر 256 عدد باشند. 
  
بين نامگذاري سيم ها و باس ها تفاوتي وجود دارد كه لازم است به آن توجه كنيد. 
  
زيرا نام نسبت داده شده به باس بايد بتواند عرض آن يعني تعداد سيم هاي تشكيل دهنده 
  
آن را نشان دهد.  به عنوان مثال نمونه هاي زير را ببينيد: 
  
A[7..0] اين نام معرف باسي با نام  A و عرض  8 بيت ( 7,…,3,2,1,0  ) است . 
  
B[15..9] اين نام معرف باسي با نام  B و عرض 7 بيت ( 15…,12,11,10,9) است . 
  
البته نام باس مي تواند عبارت ديگري نيز باشد . 
مثلا فرض كنيد كه داراي 30 خط سيم هستيم كه مي خواهيم 7 خط آن را به صورت باسي با نام B[15…9]  انتقال دهیم . 
براي اين كار بايد نام هاي زير را به سيم هاي مورد نظر اختصاص دهيم.  با اينكار ، اين 7 سيم را به صورت باس در آورده ايم 
( فرض كنيد بقيه خطوط باس ، B از سيم هاي ديگر تشكيل شده اند ) : 
  
B15 ،B14 ،B13 ،B12 ،B11 ،B10 ،B9 
  
  
  
  
در مورد نام گذاري باس ها مي توانيد به  help برنامه مراجعه كنيد.  اما براي كارهاي با پيچيدگي 
  
كم ، همان مقدار كه گفته شد كفايت مي كند.  در ادامه طراحي متوجه خواهيد شد كه در اين 
  
چند جمله چه گفته شده است.  در يك جمع كننده چند بيتي  carry out مرحله قبل به عنوان 
  
carry in مرحله بعد به حساب مي آيد.  با در نظر گرفتن اين موضوع مدار خود را به صورت زير 
  
طراحي كنيد.  در عين حال به نام گذاري سيم ها دقت كنيد.  براي نام گذاري سيم و يا باس ، آن را با ماوس انتخاب كنيد ( به رنگ قرمز در آيد ) سپس نام مورد نظر را تايپ كنيد. 
  
يادآوري مي كنم كه براي رسم باس ، از بخش  Line Style خط پررنگ دوم را انتخاب كنيد ( مي توانيد پس از انتخاب و يا رسم سيم ، نوع آن را از نوار ابزار تغيير دهيد ) همچنين توجه كنيد كه نامي كه به پرت ورودي و خروجي نسبت داده ايد ، بايد همانند نام سيم يا باس متصل به آن باشد . فايل خود را ذخيره كنيد. 
  
پروژه خود را پس از تكميل ، كامپايل كنيد.  اما پيش از آن قطعه MAX3000A (PLD) را انتخاب كنيد . 
  
براي شبيه سازي پروژه ، فايل جديدي از نوع  Waveform Editor و با پسوند .scf بسازيد و مطابق با روش گفته شده ، گره هاي c_out,s[3..0],c_IN,Y[3..0],X[3..0]  را وارد كنيد. زمان پايان شبيه سازي را 200ns در نظر بگيريد . برروي گره X[3..0]  دوبار كليك كنيد و از قسمت Radix  گزينه  BIN  را انتخاب كنيد.  در اين قسمت مي توان نحوه نمايش سيگنال هاي گروهي را تعيين كرد و ما چون با جمع كننده باينري سروكار داريم ، اين گزينه را انتخاب كرديم . 
  
بخش ما بين 30ns تا 60ns را انتخاب كنيد و در پنجره Overwrite Group value  عدد 1110 را وارد كنيد . 
  
فايل شبيه سازي را با نام  fa.scf4 ذخيره كنيد. 
  
مي توانيد با روشي مشابه ، از اين طرح هم سمبل بسازيد. در واقع هيچ محدوديتي در مورد تعداد سمبل هاي تو در تو وجود ندارد و يك سمبل مي تواند از سمبل هاي متعدد ديگري تشكيل شود ( در اينجا منظور از سمبل ، سمبل هايي است كه شما مي سازيد و نه سمبل هاي از پيش تعيين شده در برنامه ) . 
  
بهتراستخودتاناينمداررابااستفادهاز Floorplan Editor و Timing Analyzer بررسيكنيد. 
  
برنامه نويسي PLD انتخاب شده ، آخرين مرحله طراحي خواهد بود . 
  
MAX+plus II > Programmer  و برروي دكمهprogram   كليك كنيد. 
  
PLD  هايي كه در اينجا معرفي شدند داراي ساختار هاي دروني متفاوتي نسبت به هم هستند. ولي در اين راهنما ، اين موارد بررسي نخواهند شد.  فقط بدانيد كه براي برخي از PLD هاي انتخاب شده براي برنامه نويسي ، بايد از دكمه Configure به جاي  Program استفاده كنيد. براي بررسي بيشتر به Help مراجعه کنید . 
  
  
  
  
Ø    بايگاني پروژه : 
  
براي ذخيره كليه فايل هاي طراحي و فايل هاي مرتبط با پروژه خود پس از اتمام آن ، 
با استفاده از  Project archive آن را بايگاني كنيد.  مراحل زير را انجام دهيد : 
  
File > Project > Archive … 
  
و سپس نام و محل دايركتوري جديدي كه شامل فايل هاي پروژه خواهد شد را مشخص كنيد. پس از انجام اينكار ، دايركتوري جديدي ايجاد خواهد شد كه كليه فايل هاي مرتبط با پروژه شما را در بر دارد. پس از اتمام هر پروژه ، آن را بايگاني كنيد تا از ادغام فايل هاي آن با فايل هاي پروژه هاي بعدي و احتمالا از بين رفتن آن