{"id":64,"date":"2021-06-07T19:24:26","date_gmt":"2021-06-07T19:24:26","guid":{"rendered":"https:\/\/webspace.nyit.edu\/educationbase\/?page_id=64"},"modified":"2025-01-17T20:52:57","modified_gmt":"2025-01-17T20:52:57","slug":"page-3","status":"publish","type":"page","link":"https:\/\/pages.nyit.edu\/zli75\/page-3\/","title":{"rendered":"ASIC, DSP, FPGA programming"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"alignleft size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"952\" height=\"248\" src=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/GPU-CPU-FPGA-ASIC3.jpg\" alt=\"\" class=\"wp-image-171\" style=\"width:215px;height:auto\" srcset=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/GPU-CPU-FPGA-ASIC3.jpg 952w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/GPU-CPU-FPGA-ASIC3-300x78.jpg 300w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/GPU-CPU-FPGA-ASIC3-768x200.jpg 768w\" sizes=\"auto, (max-width: 952px) 100vw, 952px\" \/><\/figure>\n<\/div>\n\n\n<p>CPU vs GPU vs FPGA vs ASIC<br> Flexibility &lt; &#8212;&#8212;&gt; Efficiency<br><\/p>\n\n\n\n<p><br>1. <strong> DSP: digital signal processors (TI, Freescale\/NXP, ADI)<\/strong><br><a href=\"https:\/\/github.com\/mikeroyal\/DSP-Guide\">GitHub &#8211; mikeroyal\/DSP-Guide: Digital Signal Processing(DSP) Guide<\/a><br><a href=\"https:\/\/pysdr.org\/content\/intro.html\">Introduction \u2014 PySDR: A Guide to SDR and DSP using Python<\/a><br><a href=\"https:\/\/www.nxp.com\/products\/processors-and-microcontrollers\/power-architecture\/qoriq-communication-processors\/qonverge-platform\/qoriq-b4860-baseband-processor:B4860\">B4860-Baseband-Processor<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>2. <strong>ModelSim RTL (VHDL, Verilog)<\/strong><br>Reference source code: <a href=\"https:\/\/vhdlguru.blogspot.com\/\">VHDL coding tips and tricks (<\/a><strong><a href=\"https:\/\/vhdlguru.blogspot.com\/\">vhdlguru.blogspot.com<\/a><\/strong><a href=\"https:\/\/vhdlguru.blogspot.com\/\">)<\/a><br>Download: <strong><a href=\"https:\/\/www.intel.com\/content\/www\/us\/en\/software-kit\/750666\/modelsim-intel-fpgas-standard-edition-software-version-20-1-1.html\">www.intel.com&nbsp;\u203a content \u203a wwwModelSim-Intel\u00ae<\/a><\/strong><br><br><strong>Running VHDL Simulation with ModelSim<\/strong><br><em>write your VHDL_code.vhd<br>write the test_bench.vhd<br>compile &#8211;&gt; simulation<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"504\" src=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/image-7-1024x504.png\" alt=\"\" class=\"wp-image-155\" style=\"width:714px;height:auto\" srcset=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/image-7-1024x504.png 1024w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/image-7-300x148.png 300w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/image-7-768x378.png 768w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/image-7-1536x756.png 1536w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/07\/image-7.png 2000w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><br><br>3. <strong>Programming Language C+<\/strong>+ : <a href=\"https:\/\/cplusplus.com\/doc\/tutorial\/\">cplusplus.com\/doc\/tutorial\/<\/a><br><br><strong>C\/C++ tool installation, edit, compile and run<\/strong><br><br>1) Download the <strong>MS Visual Studio<\/strong> from: <a href=\"https:\/\/visualstudio.microsoft.com\/downloads\/\">https:\/\/visualstudio.microsoft.com\/downloads\/<\/a><br> Or, Download MS Visual Studio from: <a href=\"https:\/\/visualstudio.microsoft.com\/vs\/older-downloads\">https:\/\/visualstudio.microsoft.com\/vs\/older-downloads<\/a><br> (<a href=\"https:\/\/visualstudio.microsoft.com\/downloads\/\">Download Visual Studio Tools &#8211; Install Free for Windows, Mac, Linux (microsoft.com)<\/a> )<br><br>2) Or, Download the <strong>Code Blocks<\/strong> from: <a href=\"https:\/\/www.codeblocks.org\">https:\/\/www.codeblocks.org<\/a><\/p>\n\n\n\n<p>3) Learning <strong>C\/C++<\/strong> in Visual Studio: <a href=\"https:\/\/learn.microsoft.com\/en-us\/cpp\/overview\/visual-cpp-in-visual-studio?view=msvc-170\">https:\/\/learn.microsoft.com\/en-us\/cpp\/overview\/visual-cpp-in-visual-studio?view=msvc-170<\/a><br><br>Coding example:  The <strong>Factor-Weighted-Rating<\/strong> Model by C++<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1008\" height=\"1024\" src=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-4-1008x1024.png\" alt=\"\" class=\"wp-image-210\" style=\"width:714px;height:auto\" srcset=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-4-1008x1024.png 1008w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-4-295x300.png 295w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-4-768x780.png 768w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-4.png 1107w\" sizes=\"auto, (max-width: 1008px) 100vw, 1008px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"199\" src=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-5-1024x199.png\" alt=\"\" class=\"wp-image-211\" style=\"width:715px;height:auto\" srcset=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-5-1024x199.png 1024w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-5-300x58.png 300w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-5-768x149.png 768w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-5-1536x298.png 1536w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2024\/08\/image-5.png 1732w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>4.  <strong>SystemC<\/strong><\/strong>: <strong>System Level Design and Verification <\/strong><br><a href=\"https:\/\/systemc.org\/\">systemC.org<\/a><br><a href=\"http:\/\/www.ocpip.org\">http:\/\/www.ocpip.org<\/a><br><a href=\"https:\/\/www.youtube.com\/watch?v=NCFxBGLB5xs&amp;list=PLcvQHr8v8MQLj9tCYyOw44X1PLisEsX-J\"><a href=\"https:\/\/www.youtube.com\/watch?v=NCFxBGLB5xs&amp;list=PLcvQHr8v8MQLj9tCYyOw44X1PLisEsX-J\">Learn SystemC\u00a0 &#8211; Introduction<\/a><\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"615\" height=\"505\" src=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-5.png\" alt=\"\" class=\"wp-image-229\" style=\"width:622px;height:auto\" srcset=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-5.png 615w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-5-300x246.png 300w\" sizes=\"auto, (max-width: 615px) 100vw, 615px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><br><strong>5. ASIC and FPGA design, simulation and verification Suites<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"510\" src=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-4-1024x510.png\" alt=\"\" class=\"wp-image-227\" srcset=\"https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-4-1024x510.png 1024w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-4-300x149.png 300w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-4-768x382.png 768w, https:\/\/pages.nyit.edu\/zli75\/wp-content\/uploads\/sites\/76\/2025\/01\/image-4.png 1161w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>1). <strong>Vivado<\/strong> and <strong>Quartus<\/strong> are specialized for FPGA workflows, tightly coupled with their respective hardware.<br>2). <strong>Cadence<\/strong> and <strong>Synopsys<\/strong> dominate ASIC\/SoC design but offer limited FPGA workflows, with Synopsys&#8217; <strong>HAPS<\/strong> and Siemens&#8217; <strong>Veloce<\/strong> filling the FPGA-based emulation niche.<br>3). <strong>Siemens (Mentor Graphics)<\/strong> uniquely bridges both ASIC and FPGA workflows, providing tools for synthesis, debugging, and emulation.<br><\/p>\n\n\n\n<p><br><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>CPU vs GPU vs FPGA vs ASIC Flexibility &lt; &#8212;&#8212;&gt; Efficiency 1. DSP: digital signal processors (TI, Freescale\/NXP, ADI)GitHub &#8211; mikeroyal\/DSP-Guide: Digital Signal Processing(DSP) GuideIntroduction \u2014 PySDR: A Guide to SDR and DSP using PythonB4860-Baseband-Processor ...<\/p>\n","protected":false},"author":163,"featured_media":0,"parent":0,"menu_order":5,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-64","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/pages.nyit.edu\/zli75\/wp-json\/wp\/v2\/pages\/64","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pages.nyit.edu\/zli75\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pages.nyit.edu\/zli75\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pages.nyit.edu\/zli75\/wp-json\/wp\/v2\/users\/163"}],"replies":[{"embeddable":true,"href":"https:\/\/pages.nyit.edu\/zli75\/wp-json\/wp\/v2\/comments?post=64"}],"version-history":[{"count":0,"href":"https:\/\/pages.nyit.edu\/zli75\/wp-json\/wp\/v2\/pages\/64\/revisions"}],"wp:attachment":[{"href":"https:\/\/pages.nyit.edu\/zli75\/wp-json\/wp\/v2\/media?parent=64"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}