A Quick Introduction to Programmable Logic

AQuick Introduction toProgrammable Logic.Omer Kilic – OSHUG #9, April 2011,[object Object]
http://omer.kilic.name,[object Object]
Agenda,[object Object],History of Digital Electronics,[object Object],Programmable Logic Devices,[object Object],Design ‘flow’ for FPGAs,[object Object],State of the Art / Challenges,[object Object],Q & A,[object Object]
1854,[object Object],AND,[object Object],NOT,[object Object],OR,[object Object],George Boole,[object Object],Inventor of Boolean Logic,[object Object],An Investigation of the Laws of Thought,[object Object],http://www.gutenberg.org/ebooks/15114,[object Object]
Logic Functions,[object Object]
1937,[object Object],Claude Shannon,[object Object],Designs first electrical application utilising Boolean Theory,[object Object],A Symbolic Analysis of Relay and Switching Circuits,[object Object],http://dspace.mit.edu/handle/1721.1/11173,[object Object]
1947: Point-contact transistor invented at Bell Labs,[object Object],1954: Texas Instruments introduces first commercial silicon transistor,[object Object]
http://www.flickr.com/photos/andy_squirrel/4701062117,[object Object]
Logic Families,[object Object]
7400 Series (TTL),[object Object]
A Quick Introduction to Programmable Logic
http://www.flickr.com/photos/dnny/1435262760/,[object Object]
A Quick Introduction to Programmable Logic
Application-Specific Integrated Circuit,[object Object]
Programmable Logic Array,[object Object]
Programmable Array Logic,[object Object]
Complex Programmable Logic Device,[object Object],‘Macrocells’,[object Object],EEPROM/Flash Non-volatile configuration,[object Object],Instant-on,[object Object],Not-OTP!,[object Object],Coarse Grain,[object Object]
Field Programmable Gate Array,[object Object],‘Field Programmable’,[object Object],Based on blocks of logic and a flexible interconnect matrix,[object Object],Fine Grain,[object Object],Used in: digital signal processing, software-defined radio, aerospace and defense systems, ASIC prototyping, medical imaging, computer vision, speech recognition, cryptography, bioinformatics, computer hardware emulation, radio astronomy, metal detection,…,[object Object]
Programmable Logic Vendors,[object Object]
A Quick Introduction to Programmable Logic
A Quick Introduction to Programmable Logic
A Quick Introduction to Programmable Logic
A Quick Introduction to Programmable Logic
Configurable Logic Block,[object Object]
Configurable Logic Block,[object Object],Slice,[object Object],Slice,[object Object],Slice,[object Object],Slice,[object Object]
Configurable Logic Block,[object Object],Slice,[object Object],Slice,[object Object],Logic Cell,[object Object],Logic Cell,[object Object],Logic Cell,[object Object],Logic Cell,[object Object],Slice,[object Object],Slice,[object Object],Logic Cell,[object Object],Logic Cell,[object Object],Logic Cell,[object Object],Logic Cell,[object Object]
A Quick Introduction to Programmable Logic
A Quick Introduction to Programmable Logic
Aside: Software Compilation,[object Object],main.s,[object Object],        .file   "main.c",[object Object],        .section        .rodata,[object Object],.LC0:,[object Object],        .string "hello, world",[object Object],        .text,[object Object],.globl main,[object Object],        .type   main, @function,[object Object],main:,[object Object],leal    4(%esp), %ecx,[object Object],andl    $-16, %esp,[object Object],pushl   -4(%ecx),[object Object],pushl   %ebp,[object Object],movl    %esp, %ebp,[object Object],pushl   %ecx,[object Object],subl    $4, %esp,[object Object],movl    $.LC0, (%esp),[object Object],        call    puts,[object Object],movl    $0, %eax,[object Object],addl    $4, %esp,[object Object],popl    %ecx,[object Object],popl    %ebp,[object Object],leal    -4(%ecx), %esp,[object Object],        ret,[object Object],        .size   main, .-main,[object Object],        .section        .note.GNU-stack,"",@progbits,[object Object],main.c,[object Object],#include <stdio.h>,[object Object],int main(void),[object Object],{,[object Object],printf("hello, world");,[object Object],return 0;,[object Object],},[object Object],gcc -S main.c,[object Object],http://en.wikipedia.org/wiki/X86_instruction_listings,[object Object]
FPGA Design Flow,[object Object],Behavioural Simulation,[object Object],Post-Synthesis Simulation,[object Object],Post-PAR Simulation,[object Object]
Design Entry,[object Object],Schematic Based,[object Object],Hardware Description Languages,[object Object],VHDL,[object Object],Verilog,[object Object],Constraints definition,[object Object],‘Floorplan’,[object Object],Timing,[object Object],Power,[object Object],“Which HDL do you prefer?”,[object Object],“The one I'm not using this week”,[object Object],Janick Bergeron,[object Object]
VHDL vs Verilog,[object Object],Example: 8-bit shift-left register with a positive-edge clock, serial in, and serial out,[object Object],VHDL,[object Object],library ieee;use ieee.std_logic_1164.all;entity shift is  port(C, SI : in std_logic;       SO : out std_logic);end shift;,[object Object],architecture Behav of shift is  signal tmp: std_logic_vector(7 downto 0);beginprocess (C)begin  if (C'event and C='1') then    for i in 0 to 6 looptmp(i+1) = tmp(i);    end loop;,[object Object],tmp(0) = SI;  end if;end process;,[object Object],SO = tmp(7);end Behav;,[object Object],Verilog,[object Object],module shift (C, SI, SO);,[object Object],input C,SI;output SO;reg [7:0] tmp;  always @(posedge C)    begintmp= tmp<< 1;tmp[0] = SI;  end,[object Object],  assign SO = tmp[7];endmodule,[object Object],From:  http://www.xilinx.com/itp/3_1i/data/fise/xst/chap02/xst02007.htm,[object Object]
VHDL vs Verilog,[object Object],“Verilog was written by a bunch of hardware guys who knew nothing about software.  We beat on it 'till you could do software with it.”,[object Object],“VHDL was written by a bunch of software guys who knew nothing about hardware.  We beat on it 'till you could do hardware with it.”,[object Object],http://groups.google.com/group/comp.lang.vhdl/msg/c9edc45f3a7c86d4,[object Object]
Synthesis,[object Object],Check Syntax,[object Object],Analyse/Optimise hierarchy of design,[object Object],Translate Schematic/HDL code into a ‘netlist’,[object Object]
Implementation,[object Object],Translate,[object Object],Merges netlists/constraints,[object Object],(Functional Simulation),[object Object],Map,[object Object],Maps design onto physical FPGA blocks (CLB, IOB, etc.),[object Object],(Static Timing Analysis),[object Object],Place & Route (PAR),[object Object],Places ‘mapped’ blocks onto FPGA fabric and arranges connections between them ,[object Object],(Static Timing Analysis),[object Object],Produces ‘bitstream’,[object Object]
Programming,[object Object],Most FPGAs are SRAM based,[object Object],Volatile configuration,[object Object],External configuration memory,[object Object],JTAG,[object Object]
Simulation!,[object Object]
FPGA Design Flow,[object Object],Behavioural Simulation,[object Object],Post-Synthesis Simulation,[object Object],Post-PAR Simulation,[object Object]
Xilinx Microblaze ‘Softcore’ Processor,[object Object]
Xilinx Microblaze ‘Softcore’ Processor,[object Object]
Xilinx ML605,[object Object],http://bit.ly/xilinx-ml605,[object Object]
Avnet Spartan-6 LX9 MicroBoard,[object Object],http://bit.ly/avnet-s6-microboard ,[object Object],Digilent Basys2,[object Object],http://bit.ly/digilent-basys2,[object Object]
Enterpoint Merrick1,[object Object],100+1 FPGAs,[object Object],10 x 10 array of Spartan™-3A DSP XC3SD3400A and a Virtex™-5 XC5VLX30T,[object Object],“A standard Merrick1 can be rented at GBP £2000, USD $3000, per month subject to minimum rental period and deposit. Additional costs for shipping, insurance and taxes may also apply.”,[object Object],http://bit.ly/enterpoint-merrick1 ,[object Object]
State of the Art,[object Object]
State of the Art,[object Object]
State of the Art,[object Object]
Challenges,[object Object],Toolchains are complicated, costly and (mostly) closed source,[object Object],Lack of standardised frameworks or workflows,[object Object],Advances in device capabilities not fully utilised by applications,[object Object]
Thanks! Any Questions?,[object Object]
1 of 48

Recommended

Introduction to XMOS Software Defined Silicon Technology by
Introduction to XMOS Software Defined Silicon TechnologyIntroduction to XMOS Software Defined Silicon Technology
Introduction to XMOS Software Defined Silicon TechnologyOmer Kilic
1.2K views17 slides
Interacting with Intel Edison by
Interacting with Intel EdisonInteracting with Intel Edison
Interacting with Intel EdisonFITC
2.9K views28 slides
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World by
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing WorldCloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing WorldOmer Kilic
2.3K views46 slides
Interfacing the Raspberry Pi to the World by
Interfacing the Raspberry Pi to the WorldInterfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the WorldOmer Kilic
9.1K views27 slides
Getting started with Intel IoT Developer Kit by
Getting started with Intel IoT Developer KitGetting started with Intel IoT Developer Kit
Getting started with Intel IoT Developer KitSulamita Garcia
17.8K views67 slides
Interfacing with Arduino by
Interfacing with ArduinoInterfacing with Arduino
Interfacing with ArduinoOmer Kilic
3K views14 slides

More Related Content

What's hot

Taking Back Embedded: The Erlang Embedded Framework by
Taking Back Embedded: The Erlang Embedded FrameworkTaking Back Embedded: The Erlang Embedded Framework
Taking Back Embedded: The Erlang Embedded FrameworkOmer Kilic
1.8K views46 slides
Asus Tinker Board by
Asus Tinker BoardAsus Tinker Board
Asus Tinker BoardNiyazi SARAL
314.2K views15 slides
Nios2 and ip core by
Nios2 and ip coreNios2 and ip core
Nios2 and ip coreanishgoel
1.9K views18 slides
Internet Technology for the Commodore 64 by
Internet Technology for the Commodore 64Internet Technology for the Commodore 64
Internet Technology for the Commodore 64Leif Bloomquist
2.5K views28 slides
Introduction to Arduino by
Introduction to ArduinoIntroduction to Arduino
Introduction to ArduinoOmer Kilic
13.3K views32 slides
Intel galileo by
Intel galileoIntel galileo
Intel galileoSofian Hadiwijaya
2.3K views32 slides

What's hot(20)

Taking Back Embedded: The Erlang Embedded Framework by Omer Kilic
Taking Back Embedded: The Erlang Embedded FrameworkTaking Back Embedded: The Erlang Embedded Framework
Taking Back Embedded: The Erlang Embedded Framework
Omer Kilic1.8K views
Asus Tinker Board by Niyazi SARAL
Asus Tinker BoardAsus Tinker Board
Asus Tinker Board
Niyazi SARAL314.2K views
Nios2 and ip core by anishgoel
Nios2 and ip coreNios2 and ip core
Nios2 and ip core
anishgoel1.9K views
Internet Technology for the Commodore 64 by Leif Bloomquist
Internet Technology for the Commodore 64Internet Technology for the Commodore 64
Internet Technology for the Commodore 64
Leif Bloomquist2.5K views
Introduction to Arduino by Omer Kilic
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
Omer Kilic13.3K views
Alessandro Abbruzzetti - Kernal64 by Scala Italy
Alessandro Abbruzzetti - Kernal64Alessandro Abbruzzetti - Kernal64
Alessandro Abbruzzetti - Kernal64
Scala Italy2.5K views
Fpga computing by rinnocente
Fpga computingFpga computing
Fpga computing
rinnocente998 views
Cloud Deep Learning Chips Training & Inference by Mr. Vengineer
Cloud Deep Learning Chips Training & InferenceCloud Deep Learning Chips Training & Inference
Cloud Deep Learning Chips Training & Inference
Mr. Vengineer627 views
Asus Tinker Board by Niyazi Saral
Asus Tinker BoardAsus Tinker Board
Asus Tinker Board
Niyazi Saral3.3K views
TDD in deeply embedded system (Arduino) with TAP by François Perrad
TDD in deeply embedded system (Arduino) with TAPTDD in deeply embedded system (Arduino) with TAP
TDD in deeply embedded system (Arduino) with TAP
François Perrad1.8K views
Introduction to Arduino by Yong Heui Cho
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
Yong Heui Cho11.6K views
Introduction to Arduino by vishal kumar
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
vishal kumar76 views

Viewers also liked

Mux decod pld2_vs2 by
Mux decod pld2_vs2Mux decod pld2_vs2
Mux decod pld2_vs2WanNurdiana
4.3K views43 slides
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2 by
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2Kundan Gupta
1.2K views13 slides
programmable logic array by
programmable logic arrayprogrammable logic array
programmable logic arrayShiraz Azeem
5.2K views9 slides
Programmable array logic by
Programmable array logicProgrammable array logic
Programmable array logicGaditek
12.1K views23 slides
Introduction to FPGA, VHDL by
Introduction to FPGA, VHDL  Introduction to FPGA, VHDL
Introduction to FPGA, VHDL Amr Rashed
11.4K views156 slides
Programmable Logic Array ( PLA ) by
Programmable Logic Array ( PLA )Programmable Logic Array ( PLA )
Programmable Logic Array ( PLA )Soudip Sinha Roy
5.1K views17 slides

Viewers also liked(7)

Mux decod pld2_vs2 by WanNurdiana
Mux decod pld2_vs2Mux decod pld2_vs2
Mux decod pld2_vs2
WanNurdiana4.3K views
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2 by Kundan Gupta
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2
Kundan Gupta1.2K views
programmable logic array by Shiraz Azeem
programmable logic arrayprogrammable logic array
programmable logic array
Shiraz Azeem5.2K views
Programmable array logic by Gaditek
Programmable array logicProgrammable array logic
Programmable array logic
Gaditek12.1K views
Introduction to FPGA, VHDL by Amr Rashed
Introduction to FPGA, VHDL  Introduction to FPGA, VHDL
Introduction to FPGA, VHDL
Amr Rashed11.4K views
Programmable lrray Logic by rohitladdu
Programmable lrray LogicProgrammable lrray Logic
Programmable lrray Logic
rohitladdu2K views

Similar to A Quick Introduction to Programmable Logic

Parallella: Embedded HPC For Everybody by
Parallella: Embedded HPC For EverybodyParallella: Embedded HPC For Everybody
Parallella: Embedded HPC For Everybodyjerlbeck
17 views47 slides
iSoligorsk #3 2013 by
iSoligorsk #3 2013iSoligorsk #3 2013
iSoligorsk #3 2013Friedrich Boeckh
911 views57 slides
VLSI by
VLSIVLSI
VLSIMAYANK KUMAR
335 views20 slides
Fpga by
FpgaFpga
Fpgabharadwajareddy
6.1K views28 slides
Fletcher Framework for Programming FPGA by
Fletcher Framework for Programming FPGAFletcher Framework for Programming FPGA
Fletcher Framework for Programming FPGAGanesan Narayanasamy
134 views26 slides
Introduction to FPGA acceleration by
Introduction to FPGA accelerationIntroduction to FPGA acceleration
Introduction to FPGA accelerationMarco77328
100 views59 slides

Similar to A Quick Introduction to Programmable Logic(20)

Parallella: Embedded HPC For Everybody by jerlbeck
Parallella: Embedded HPC For EverybodyParallella: Embedded HPC For Everybody
Parallella: Embedded HPC For Everybody
jerlbeck17 views
Introduction to FPGA acceleration by Marco77328
Introduction to FPGA accelerationIntroduction to FPGA acceleration
Introduction to FPGA acceleration
Marco77328100 views
Preparing to program Aurora at Exascale - Early experiences and future direct... by inside-BigData.com
Preparing to program Aurora at Exascale - Early experiences and future direct...Preparing to program Aurora at Exascale - Early experiences and future direct...
Preparing to program Aurora at Exascale - Early experiences and future direct...
inside-BigData.com1.4K views
Beyond Breakpoints: A Tour of Dynamic Analysis by C4Media
Beyond Breakpoints: A Tour of Dynamic AnalysisBeyond Breakpoints: A Tour of Dynamic Analysis
Beyond Breakpoints: A Tour of Dynamic Analysis
C4Media777 views
Summer training vhdl by Arshit Rai
Summer training vhdlSummer training vhdl
Summer training vhdl
Arshit Rai311 views
Summer training vhdl by Arshit Rai
Summer training vhdlSummer training vhdl
Summer training vhdl
Arshit Rai380 views
VLSI Experiments I by Gouthaman V
VLSI Experiments IVLSI Experiments I
VLSI Experiments I
Gouthaman V11.8K views
Digital VLSI Design and FPGA Implementation by Amber Bhaumik
Digital VLSI Design and FPGA ImplementationDigital VLSI Design and FPGA Implementation
Digital VLSI Design and FPGA Implementation
Amber Bhaumik12.7K views
You're Off the Hook: Blinding Security Software by Cylance
You're Off the Hook: Blinding Security SoftwareYou're Off the Hook: Blinding Security Software
You're Off the Hook: Blinding Security Software
Cylance2.5K views
Reconfigurable ICs by Anish Goel
Reconfigurable ICsReconfigurable ICs
Reconfigurable ICs
Anish Goel191 views

More from Omer Kilic

Bare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems by
Bare Metal from a Hardware Perspective: Embedded Frameworks & Build SystemsBare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems
Bare Metal from a Hardware Perspective: Embedded Frameworks & Build SystemsOmer Kilic
288 views33 slides
Gearing up for Volume Manufacturing by
Gearing up for Volume ManufacturingGearing up for Volume Manufacturing
Gearing up for Volume ManufacturingOmer Kilic
539 views41 slides
The Process of Shipping Hardware Products by
The Process of Shipping Hardware ProductsThe Process of Shipping Hardware Products
The Process of Shipping Hardware ProductsOmer Kilic
607 views51 slides
Confusion of Things — The IoT Hardware Kerfuffle by
Confusion of Things — The IoT Hardware KerfuffleConfusion of Things — The IoT Hardware Kerfuffle
Confusion of Things — The IoT Hardware KerfuffleOmer Kilic
1.6K views26 slides
Fast and Furious: Overclocking chips for fun and profit by
Fast and Furious: Overclocking chips for fun and profitFast and Furious: Overclocking chips for fun and profit
Fast and Furious: Overclocking chips for fun and profitOmer Kilic
1.3K views24 slides
Erlang Embedded — Concurrent Blinkenlights and More! by
Erlang Embedded — Concurrent Blinkenlights and More!Erlang Embedded — Concurrent Blinkenlights and More!
Erlang Embedded — Concurrent Blinkenlights and More!Omer Kilic
1.6K views26 slides

More from Omer Kilic(12)

Bare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems by Omer Kilic
Bare Metal from a Hardware Perspective: Embedded Frameworks & Build SystemsBare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems
Bare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems
Omer Kilic288 views
Gearing up for Volume Manufacturing by Omer Kilic
Gearing up for Volume ManufacturingGearing up for Volume Manufacturing
Gearing up for Volume Manufacturing
Omer Kilic539 views
The Process of Shipping Hardware Products by Omer Kilic
The Process of Shipping Hardware ProductsThe Process of Shipping Hardware Products
The Process of Shipping Hardware Products
Omer Kilic607 views
Confusion of Things — The IoT Hardware Kerfuffle by Omer Kilic
Confusion of Things — The IoT Hardware KerfuffleConfusion of Things — The IoT Hardware Kerfuffle
Confusion of Things — The IoT Hardware Kerfuffle
Omer Kilic1.6K views
Fast and Furious: Overclocking chips for fun and profit by Omer Kilic
Fast and Furious: Overclocking chips for fun and profitFast and Furious: Overclocking chips for fun and profit
Fast and Furious: Overclocking chips for fun and profit
Omer Kilic1.3K views
Erlang Embedded — Concurrent Blinkenlights and More! by Omer Kilic
Erlang Embedded — Concurrent Blinkenlights and More!Erlang Embedded — Concurrent Blinkenlights and More!
Erlang Embedded — Concurrent Blinkenlights and More!
Omer Kilic1.6K views
The Actor Model applied to the Raspberry Pi and the Embedded Domain by Omer Kilic
The Actor Model applied to the Raspberry Pi and the Embedded DomainThe Actor Model applied to the Raspberry Pi and the Embedded Domain
The Actor Model applied to the Raspberry Pi and the Embedded Domain
Omer Kilic4.6K views
From Breadboard to Finished Product by Omer Kilic
From Breadboard to Finished ProductFrom Breadboard to Finished Product
From Breadboard to Finished Product
Omer Kilic2.3K views
concurrency.cc OSHUG #3 by Omer Kilic
concurrency.cc OSHUG #3concurrency.cc OSHUG #3
concurrency.cc OSHUG #3
Omer Kilic1.3K views
BURO Arduino Workshop by Omer Kilic
BURO Arduino WorkshopBURO Arduino Workshop
BURO Arduino Workshop
Omer Kilic3.8K views
TinkerSoc Electronics 101 by Omer Kilic
TinkerSoc Electronics 101TinkerSoc Electronics 101
TinkerSoc Electronics 101
Omer Kilic741 views
Beer Bottle Night Lamp by Omer Kilic
Beer Bottle Night LampBeer Bottle Night Lamp
Beer Bottle Night Lamp
Omer Kilic1.1K views

Recently uploaded

Special_edition_innovator_2023.pdf by
Special_edition_innovator_2023.pdfSpecial_edition_innovator_2023.pdf
Special_edition_innovator_2023.pdfWillDavies22
18 views6 slides
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
317 views86 slides
HTTP headers that make your website go faster - devs.gent November 2023 by
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023Thijs Feryn
26 views151 slides
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...Jasper Oosterveld
27 views49 slides
Ransomware is Knocking your Door_Final.pdf by
Ransomware is Knocking your Door_Final.pdfRansomware is Knocking your Door_Final.pdf
Ransomware is Knocking your Door_Final.pdfSecurity Bootcamp
66 views46 slides
SUPPLIER SOURCING.pptx by
SUPPLIER SOURCING.pptxSUPPLIER SOURCING.pptx
SUPPLIER SOURCING.pptxangelicacueva6
20 views1 slide

Recently uploaded(20)

Special_edition_innovator_2023.pdf by WillDavies22
Special_edition_innovator_2023.pdfSpecial_edition_innovator_2023.pdf
Special_edition_innovator_2023.pdf
WillDavies2218 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software317 views
HTTP headers that make your website go faster - devs.gent November 2023 by Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn26 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 by IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays24 views
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays17 views
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe by Simone Puorto
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe
Simone Puorto13 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf by Dr. Jimmy Schwarzkopf
STKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdfSTKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdf
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
Data Integrity for Banking and Financial Services by Precisely
Data Integrity for Banking and Financial ServicesData Integrity for Banking and Financial Services
Data Integrity for Banking and Financial Services
Precisely29 views
Case Study Copenhagen Energy and Business Central.pdf by Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana17 views
Future of AR - Facebook Presentation by Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty22 views

A Quick Introduction to Programmable Logic

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 12.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 24.
  • 25.
  • 26.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.

Editor's Notes

  1. Logic theory – From Philosophy to MathsAn Investigation of the Laws of Thought by George Boole
  2. But he is also credited with founding both digital computer and digital circuit design theory in 1937, when, as a 21-year-old master&apos;s student at MIT, he wrote a thesis demonstrating that electrical application of Boolean algebra could construct and resolve any logical, numerical relationship. It has been claimed that this was the most important master&apos;s thesis of all time.[2]
  3. …is an integrated circuit (IC) customized for a particular use, rather than intended for general-purpose use. For example, a chip designed solely to run a cell phone is an ASIC. Application-specific standard products (ASSPs) are intermediate between ASICs and industry standard integrated circuits like the 7400 or the 4000 series.As feature sizes have shrunk and design tools improved over the years, the maximum complexity (and hence functionality) possible in an ASIC has grown from 5,000 gates to over 100 million. Modern ASICs often include entire 32-bit processors, memory blocks including ROM, RAM, EEPROM, Flash and other large building blocks. Such an ASIC is often termed a SoC (system-on-a-chip). Designers of digital ASICs use ahardware description language (HDL), such as Verilog or VHDL, to describe the functionality of ASICs.Field-programmable gate arrays (FPGA) are the modern-day technology for building a breadboard or prototype from standard parts; programmable logic blocks and programmable interconnects allow the same FPGA to be used in many different applications. For smaller designs and/or lower production volumes, FPGAs may be more cost effective than an ASIC design even in production. The non-recurring engineering cost of an ASIC can run into the millions of dollars.
  4. Note that the use of the word &quot;programmable&quot; does not indicate that all PLAs are field-programmable; in fact many are mask-programmed during manufacture in the same manner as a mask ROM. 
  5. A macrocell array is an approach to the design and manufacture of ASICs. Essentially, it is a small step up from the otherwise similar gate array, but rather than being a prefabricated array of simple logic gates, the macrocell array is a prefabricated array of higher-level logic functions such as flip-flops, ALU functions,registers, and the like.
  6. A Field-programmable Gate Array (FPGA) is an integrated circuit designed to be configured by the customer or designer after manufacturing—hence &quot;field-programmable&quot;. Xilinx Co-Founders, Ross Freeman and Bernard Vonderschmitt, invented the first commercially viable field programmable gate array in 1985 – the XC2064.[9] The XC2064 had programmable gates and programmable interconnects between gates, the beginnings of a new technology and market.[10] The XC2064 boasted a mere 64 configurable logic blocks (CLBs), with two 3-input lookup tables (LUTs).[11]
  7. The Configurable Logic Blocks (CLBs) are the main logic resources for implementingsequential as well as combinatorial circuits. Each CLB element is connected to a switchmatrix for access to the general routing matrixA CLB element contains a pair of slices.
  8. The Configurable Logic Blocks (CLBs) are the main logic resources for implementingsequential as well as combinatorial circuits. Each CLB element is connected to a switchmatrix for access to the general routing matrixA CLB element contains a pair of slices.
  9. The Configurable Logic Blocks (CLBs) are the main logic resources for implementingsequential as well as combinatorial circuits. Each CLB element is connected to a switchmatrix for access to the general routing matrixIn general, a logic block (CLB or LAB) consists of a few logical cells (called ALM, LE, Slice etc). A typical cell consists of a 4-input Lookup table (LUT), a Full adder (FA) and a D-type flip-flop, as shown below. The LUTs are in this figure split into two 3-input LUTs.
  10. HDLs represent a level of abstraction that can isolate the designers from the details of the hardware implementation.  Schematic based entry gives designers much more visibility into the hardware. It is the better choice for those who are hardware oriented. Another method but rarely used is state-machines. It is the better choice for the designers who think the design as a series of states.
  11. Synthesis. This stage involves conversion of an HDL description to a so-called netlist which is basically a formally written digital circuit schematic. Synthesis is performed by a special software called synthesizer. For an HDL code that is correctly written and simulated, synthesis shouldn&apos;t be any problem. However, synthesis can reveal some problems and potential errors that can&apos;t be found using behavioral simulation, so, an FPGA engineer should pay attention to warnings produced by the synthesizer.
  12. mplementation. A synthesizer-generated netlist is mapped onto particular device&apos;s internal structure. The main phase of the implementation stage is place and route or layout, which allocates FPGA resources (such as logic cells and connection wires). Then these configuration data are written to a special file by a program called bitstream generator.