Skip to content

Commit

Permalink
ODIN-II headers correction
Browse files Browse the repository at this point in the history
  • Loading branch information
poname committed Jan 8, 2023
1 parent 44baf7c commit b518438
Show file tree
Hide file tree
Showing 123 changed files with 1,107 additions and 601 deletions.
6 changes: 2 additions & 4 deletions ODIN_II/SRC/BLIF.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,8 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file the definition of the BLIF class constructor, destructor
*/

#include "BLIF.hpp"
Expand Down
12 changes: 2 additions & 10 deletions ODIN_II/SRC/BLIFElaborate.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,14 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file a netlist traversal phase newly added to Odin-II techmap.
* Basically, this file includes the resolve_XXX_node routines to
* make high-level netlist nodes compatible with Odin-II partial
* mapper. However, the instantiation process of operations that
* aren't supported by Odin-II synthesis flow is also implemented
* in this phase.
* E.g. Division (constant, variable), Exponentiation (variable)
*/

#include <string.h>
Expand Down
13 changes: 3 additions & 10 deletions ODIN_II/SRC/BLIFReader.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/**
*
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
Expand All @@ -20,14 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: includes the definition of BLIF Reader class to read a given
* BLIF file. The Odin-II BLIF Reader can also read large files since
* it read each file with a BLIF_READ_BUFFER chunk or line by line.
* Odin-II BLIF Reader caches the read models while traversing the
* BLIF file to avoid searching the BLIF file looking for the model
* definition. Moreover, function getbline provides developers with
* the ability to read a BLIF file line by line or using a chunk.
*/

#include <stdlib.h>
Expand Down
10 changes: 3 additions & 7 deletions ODIN_II/SRC/BLIFWriter.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/**
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
Expand All @@ -19,12 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: definition of BLIF Writer routine to generate a BLIF output
* file. Unlike other tools that print each BLIF record in a single
* line, Odin-II BLIF Writer prints BLIF records in a specified size.
* That means it makes the BLIF file more readable by splitting the
* line by the specified threshold.
*/

#include <stdlib.h>
Expand Down
7 changes: 2 additions & 5 deletions ODIN_II/SRC/BitwiseOps.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2022 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,9 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file provides utilities to modify the bitwise nodes
* to make them compatible with the Odin-II partial mapper.
*/

#include <cmath> // log2
Expand Down
15 changes: 2 additions & 13 deletions ODIN_II/SRC/BlockMemories.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,17 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file includes the definitions of the routines to map
* block memories to VTR compatible memory types, i.e., Single Port RAM
* and Dual Port RAM. The definition of block memory and read-only memory
* is provided in techlib directory in the Odin-II root directory.
* Basically, a memory block with both read and write accesses that has a
* separate port for each operation is called BRAM. While following the
* same definition, a read-only memory block is referred to as a BRAM that
* has only read access (even multiple accesses). This function also
* includes ymem block support which somehow represents the Yosys internal
* memory cell.
*/

#include <string.h>
Expand Down
8 changes: 2 additions & 6 deletions ODIN_II/SRC/CaseEqual.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,10 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: this file includes the circuitry implementation of case_equal
* and case_not_equal high-level netlist nodes. The implementations
* are XNOR, AND and invertor gates based.
*/

#include "CaseEqual.hpp"
Expand Down
11 changes: 2 additions & 9 deletions ODIN_II/SRC/Division.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,13 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
*
* @file Division.cpp comprises the combinational implementation of
* Division operation using shift and subtraction nodes. To utilize
* this routine of this file, a high-level RTL DIV node is required
* with port order according to what is mentioned in resolve_div_node.
* Currently, this file is used by Yosys generated division sub-circuit.
*/

#include "Division.hpp"
Expand Down
15 changes: 2 additions & 13 deletions ODIN_II/SRC/FlipFlop.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,17 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file includes the circuitry implementation of six synchronous
* Data Flip-Flop models. All control signals will be check based on their
* polarity specified in the attribute structure of the related node.
* SDFF: A DFF with synchronous reset
* DFFE: A DFF with enable signal
* SDFFE: A DFF with enabling and synchronous signals
* SDFFCE: A DFF with enable signal prior to the synchronous reset
* (enable needs to be active to be able to reset)
* DFFSR: A DFF with set (VCC) and clear (GND) signals
* DFFSRE: A DFF with the set (VCC), clear (GND), and enable signals
*/

#include "FlipFlop.hpp"
Expand Down
7 changes: 2 additions & 5 deletions ODIN_II/SRC/GenericIO.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,9 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: this file provides the definition of abstract methods of
* Odin-II Generic IO class.
*/

#include "GenericIO.hpp"
Expand Down
8 changes: 2 additions & 6 deletions ODIN_II/SRC/GenericReader.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,10 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file provides the definition of Odin-II Generic Reader routines.
* The Generic Reader detects the language type and calls the required routines
* of the related class.
*/

#include "GenericReader.hpp"
Expand Down
8 changes: 2 additions & 6 deletions ODIN_II/SRC/GenericWriter.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,10 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file provides the definition of Odin-II Generic Writer routines.
* The Generic Writer detects the language type and calls the required routines
* of the related class.
*/

#include "GenericWriter.hpp"
Expand Down
3 changes: 3 additions & 0 deletions ODIN_II/SRC/HardSoftLogicMixer.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
Expand All @@ -20,6 +22,7 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/

#include "HardSoftLogicMixer.hpp"

#include <stdint.h> // INT_MAX
Expand Down
3 changes: 3 additions & 0 deletions ODIN_II/SRC/Hashtable.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
Expand All @@ -20,6 +22,7 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/

#include <string.h>
#include <stdio.h>
#include <stdlib.h>
Expand Down
12 changes: 2 additions & 10 deletions ODIN_II/SRC/Latch.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,14 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file includes the circuitry implementation of dlatch,
* dlatch with asynchronous reset and a set-reset node.All control
* signals will be check based on their polarity specified in the
* attribute structure of the related node.
* DLATCH: a dlatch with enable control signal
* ADLATCH: dlatch with asynchronous reset
* SETCLR: set (VCC), and clear (GND) to output
*/

#include "Latch.hpp"
Expand Down
7 changes: 2 additions & 5 deletions ODIN_II/SRC/LogicalOps.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,9 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file provides utilities to modify the logical nodes
* to make them compatible with the Odin-II partial mapper.
*/

#include "LogicalOps.hpp"
Expand Down
2 changes: 2 additions & 0 deletions ODIN_II/SRC/MixingOptimization.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
Expand Down
9 changes: 2 additions & 7 deletions ODIN_II/SRC/Modulo.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,11 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: This file provides the resolving process for the modulo
* node which exactly the same as division. The only different
* remainder output signal is taken instead of the quotient signal
* for the modulo node.
*/

#include "Modulo.hpp"
Expand Down
9 changes: 2 additions & 7 deletions ODIN_II/SRC/Multiplexer.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,11 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: this file provides utils to modify the multiplexer node
* to make it compatible with the Odin-II partial mapper. Moreover,
* it includes the circuitry implementation of pmux, a cell designed
* for parallel cases
*/

#include "Multiplexer.hpp"
Expand Down
9 changes: 2 additions & 7 deletions ODIN_II/SRC/Power.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2021 Seyed Alireza Damghani ([email protected])
/*
* Copyright 2023 CAS—Atlantic (University of New Brunswick, CASA)
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
Expand All @@ -21,11 +21,6 @@
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* @file: this file proposes the combinational instantiation of constant
* and variable exponentiation operations. Both implementations utilize
* the multiplication operations; however, the constant exponentiation is
* designed to use fewer multiply nodes to achieve area and speed efficiency.
*/

#include "Power.hpp"
Expand Down
Loading

0 comments on commit b518438

Please sign in to comment.