Language:
English
繁體中文
Help
Login
Back
Switch To:
Labeled
|
MARC Mode
|
ISBD
Distributed Memory Based FPGA Debug.
~
Brigham Young University.
Distributed Memory Based FPGA Debug.
Record Type:
Language materials, printed : Monograph/item
Title/Author:
Distributed Memory Based FPGA Debug./
Author:
Hale, Robert Benjamin.
Published:
Ann Arbor : ProQuest Dissertations & Theses, : 2020,
Description:
108 p.
Notes:
Source: Dissertations Abstracts International, Volume: 82-01, Section: B.
Contained By:
Dissertations Abstracts International82-01B.
Subject:
Computer engineering. -
Online resource:
http://pqdd.sinica.edu.tw/twdaoapp/servlet/advanced?query=28102972
ISBN:
9798662475892
Distributed Memory Based FPGA Debug.
Hale, Robert Benjamin.
Distributed Memory Based FPGA Debug.
- Ann Arbor : ProQuest Dissertations & Theses, 2020 - 108 p.
Source: Dissertations Abstracts International, Volume: 82-01, Section: B.
Thesis (Ph.D.)--Brigham Young University, 2020.
This item must not be sold to any third party vendors.
Field-programmable gate arrays (FPGAs) are powerful integrated circuits for low-overhead custom computing needs and design prototyping. Due to the hardware nature of programming an FPGA, finding bugs in a design can be a very challenging process. Signals need to be physically probed and data recorded in real time. This is often done by dedicating some resources on the FPGA itself towards an embedded logic analyzer. This method is effective but can be time and resource consuming. Academic research projects have produced a variety of methods for reducing this difficulty. One option that has previously been unexplored is the use of distributed LUT memory for debug trace buffers, rather than dedicated FPGA BRAM. This dissertation presents a novel, lean embedded logic analyzer that leverages leftover LUT resources on the FPGA for this purpose. Distributed Memory Debug (abbreviated as "DIME Debug") provides some amount of signal visibility into very large (90%+ LUT utilized) FPGA designs or designs where the programmer requires all available device BRAM, situations in which currently available embedded logic analyzers are likely to fail. The ubiquitous nature of LUTs on FPGAs provides opportunities to insert debug circuitry near signals of interest without disturbing placement of the user design. Using only leftover LUTs for trace buffers allows for effectively no area overhead. The DIME Debug system typically has a critical path delay in the 7-9ns range, which can force non-ideal slower timing constraints on the user design. A simulated annealing based placement algorithm and other optimizations are shown to improve timing closure results from 20-50% depending on benchmark and probe count. DIME debug can be instrumented into a fully implemented design incrementally using the RapidWright CAD tool, resulting in debug iterations under 15 minutes even for very large benchmarks. Another interesting possibility introduced by the use of memory LUTs for debug trace buffers is preallocating these resources. Setting aside a certain number of LUTs before implementation of the user design leaves them available for incremental debug instrumentation. Experiments with a preallocation scheme show that, with virtually no penalty to the user design, debug critical paths are lowered by approximately 1ns and 2-3X the number of trace buffers can be instrumented into most benchmarks.
ISBN: 9798662475892Subjects--Topical Terms:
569006
Computer engineering.
Subjects--Index Terms:
Look-up tables
Distributed Memory Based FPGA Debug.
LDR
:03446nam a2200337 4500
001
1038035
005
20210910100700.5
008
211029s2020 ||||||||||||||||| ||eng d
020
$a
9798662475892
035
$a
(MiAaPQ)AAI28102972
035
$a
(MiAaPQ)BrighamYoung9434
035
$a
AAI28102972
040
$a
MiAaPQ
$c
MiAaPQ
100
1
$a
Hale, Robert Benjamin.
$3
1335368
245
1 0
$a
Distributed Memory Based FPGA Debug.
260
1
$a
Ann Arbor :
$b
ProQuest Dissertations & Theses,
$c
2020
300
$a
108 p.
500
$a
Source: Dissertations Abstracts International, Volume: 82-01, Section: B.
500
$a
Advisor: Hutchings, Brad.
502
$a
Thesis (Ph.D.)--Brigham Young University, 2020.
506
$a
This item must not be sold to any third party vendors.
520
$a
Field-programmable gate arrays (FPGAs) are powerful integrated circuits for low-overhead custom computing needs and design prototyping. Due to the hardware nature of programming an FPGA, finding bugs in a design can be a very challenging process. Signals need to be physically probed and data recorded in real time. This is often done by dedicating some resources on the FPGA itself towards an embedded logic analyzer. This method is effective but can be time and resource consuming. Academic research projects have produced a variety of methods for reducing this difficulty. One option that has previously been unexplored is the use of distributed LUT memory for debug trace buffers, rather than dedicated FPGA BRAM. This dissertation presents a novel, lean embedded logic analyzer that leverages leftover LUT resources on the FPGA for this purpose. Distributed Memory Debug (abbreviated as "DIME Debug") provides some amount of signal visibility into very large (90%+ LUT utilized) FPGA designs or designs where the programmer requires all available device BRAM, situations in which currently available embedded logic analyzers are likely to fail. The ubiquitous nature of LUTs on FPGAs provides opportunities to insert debug circuitry near signals of interest without disturbing placement of the user design. Using only leftover LUTs for trace buffers allows for effectively no area overhead. The DIME Debug system typically has a critical path delay in the 7-9ns range, which can force non-ideal slower timing constraints on the user design. A simulated annealing based placement algorithm and other optimizations are shown to improve timing closure results from 20-50% depending on benchmark and probe count. DIME debug can be instrumented into a fully implemented design incrementally using the RapidWright CAD tool, resulting in debug iterations under 15 minutes even for very large benchmarks. Another interesting possibility introduced by the use of memory LUTs for debug trace buffers is preallocating these resources. Setting aside a certain number of LUTs before implementation of the user design leaves them available for incremental debug instrumentation. Experiments with a preallocation scheme show that, with virtually no penalty to the user design, debug critical paths are lowered by approximately 1ns and 2-3X the number of trace buffers can be instrumented into most benchmarks.
590
$a
School code: 0022.
650
4
$a
Computer engineering.
$3
569006
650
4
$a
Electrical engineering.
$3
596380
653
$a
Look-up tables
653
$a
Debug trace buffers
690
$a
0544
690
$a
0464
710
2
$a
Brigham Young University.
$3
1187870
773
0
$t
Dissertations Abstracts International
$g
82-01B.
790
$a
0022
791
$a
Ph.D.
792
$a
2020
793
$a
English
856
4 0
$u
http://pqdd.sinica.edu.tw/twdaoapp/servlet/advanced?query=28102972
based on 0 review(s)
Multimedia
Reviews
Add a review
and share your thoughts with other readers
Export
pickup library
Processing
...
Change password
Login