Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion libs/libarchfpga/arch/mult_luts_arch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@
</device>
<switchlist>
<switch type="mux" name="0" R="94.841003" Cin="1.537000e-14" Cout="2.194000e-13" Tdel="6.562000e-11" mux_trans_size="10.000000" buf_size="1"/>
<!--switch ipin_cblock resistance set to yeild for 4x minimum drive strength buffer-->
<!--switch ipin_cblock resistance set to yield for 4x minimum drive strength buffer-->
<switch type="mux" name="ipin_cblock" R="1431.71752925" Cout="0." Cin="1.191000e-14" Tdel="1.482000e-10" mux_trans_size="1.000000" buf_size="auto"/>
</switchlist>
<segmentlist>
Expand Down
4 changes: 2 additions & 2 deletions libs/libarchfpga/arch/sample_arch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
& delay of the Stratix IV crossbar as a good approximation of our crossbar.

For LUTs, we include LUT
delays measured from Stratix IV which is dependant on the input used (ie. some
delays measured from Stratix IV which is dependent on the input used (ie. some
LUT inputs are faster than others). The CAD tools at the time of VTR 7 does
not consider differences in LUT input delays.

Expand Down Expand Up @@ -256,7 +256,7 @@
Finally, we choose a switch delay (58 ps) that leads to length 4 wires having a delay equal to that of SIV of 126 ps.
This also leads to the switch being 46% of the total wire delay, which is reasonable. -->
<switch type="mux" name="0" R="551" Cin=".77e-15" Cout="4e-15" Tdel="58e-12" mux_trans_size="2.630740" buf_size="27.645901"/>
<!--switch ipin_cblock resistance set to yeild for 4x minimum drive strength buffer-->
<!--switch ipin_cblock resistance set to yield for 4x minimum drive strength buffer-->
<switch type="mux" name="ipin_cblock" R="2231.5" Cout="0." Cin="1.47e-15" Tdel="7.247000e-11" mux_trans_size="1.222260" buf_size="auto"/>
</switchlist>
<segmentlist>
Expand Down
2 changes: 1 addition & 1 deletion libs/libarchfpga/src/arch_check.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ void warn_model_missing_timing(const t_model& model, const char* file, uint32_t
void check_port_direct_mappings(t_physical_tile_type_ptr physical_tile, t_sub_tile* sub_tile, t_logical_block_type_ptr logical_block);

/**
* @brief Checks the timing consistency between tha pb_type and the corresponding model.
* @brief Checks the timing consistency between a pb_type and the corresponding model.
*
* @param pb_type pb type to check
* @param arch architecture data structure
Expand Down
2 changes: 1 addition & 1 deletion libs/libarchfpga/src/arch_util.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1148,7 +1148,7 @@ void setup_pin_classes(t_physical_tile_type* type) {
// as ignored pins (i.e. connections are not created in the rr_graph and
// nets connected to the port are ignored as well).
type->is_ignored_pin[pin_count] = port.is_clock || port.is_non_clock_global;
// clock pins and other specified global ports are flaged as global
// clock pins and other specified global ports are flagged as global
type->is_pin_global[pin_count] = port.is_clock || port.is_non_clock_global;

if (port.is_clock) {
Expand Down
6 changes: 3 additions & 3 deletions libs/libarchfpga/src/echo_arch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ static void PrintPb_types_recPower(FILE* Echo,
const char* tabs);

/* Output the data from architecture data so user can verify it
* was interpretted correctly. */
* was interpreted correctly. */
void EchoArch(const char* EchoFile,
const std::vector<t_physical_tile_type>& PhysicalTileTypes,
const std::vector<t_logical_block_type>& LogicalBlockTypes,
Expand Down Expand Up @@ -420,7 +420,7 @@ static void PrintPb_types_rec(FILE* Echo, const t_pb_type* pb_type, int level, c
} else { /*leaf pb with unknown model*/
/*LUT(names) already handled, it naturally has 2 modes.
* I/O has no annotations to be displayed
* All other library or user models may have delays specificied, e.g. Tsetup and Tcq
* All other library or user models may have delays specified, e.g. Tsetup and Tcq
* Display the additional information*/
std::string pb_type_model_name = models.get_model(pb_type->model_id).name;
if (pb_type_model_name != LogicalModels::MODEL_NAMES
Expand Down Expand Up @@ -633,7 +633,7 @@ static void PrintPb_types_recPower(FILE* Echo,
pb_type->pb_type_power->absolute_power_per_instance.dynamic);
break;
default:
fprintf(Echo, "%s\tpower method: error has occcured\n", tabs);
fprintf(Echo, "%s\tpower method: error has occcurred\n", tabs);
break;
}
}
2 changes: 1 addition & 1 deletion libs/libarchfpga/src/logic_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ typedef vtr::StrongId<struct logical_model_id_tag, size_t> LogicalModelId;
*
* There are two types of logical models:
* 1) Library Models: These are models that all architectures share. These are
* created in the construtor of this class.
* created in the constructor of this class.
* 2) User Models: These are models defined by the user and are created outside
* of this class (usually by parsing an architecture file).
*/
Expand Down
12 changes: 6 additions & 6 deletions libs/libarchfpga/src/physical_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -494,7 +494,7 @@ enum class e_sb_type {
* pin_avg_width_offset: Average width offset to specified pin (exact if only a single physical pin instance)
* pin_avg_height_offset: Average height offset to specified pin (exact if only a single physical pin instance)
* pin_class: The class a pin belongs to
* is_ignored_pin: Whether or not a pin is ignored durring rr_graph generation and routing.
* is_ignored_pin: Whether or not a pin is ignored during rr_graph generation and routing.
* This is usually the case for clock pins and other global pins unless the
* clock_modeling option is set to route the clock through regular inter-block
* wiring or through a dedicated clock network.
Expand Down Expand Up @@ -998,7 +998,7 @@ struct t_pb_type {
* @brief Check if t_pb_type is the root of the pb graph. Root pb_types correspond to a single top level block type and map to a particular type
* of location in the FPGA device grid (e.g. Logic, DSP, RAM etc.)
*
* @return if t_pb_type is root ot not
* @return if t_pb_type is root or not
*/
inline bool is_root() const {
return parent_mode == nullptr;
Expand All @@ -1007,7 +1007,7 @@ struct t_pb_type {
/**
* @brief Check if t_pb_type is a primitive block or equivalently a leaf of the pb graph.
*
* @return if t_pb_type is primitive/leaf ot not
* @return if t_pb_type is primitive/leaf or not
*/
inline bool is_primitive() const {
return num_modes == 0;
Expand Down Expand Up @@ -1298,8 +1298,8 @@ class t_pb_graph_node {
* as well), but LUTs A, B and C could still be routed using the parent pb_graph_node's mode "LUTRAM".
* Therefore, "LUTs" is marked as illegal and all the LUTs (A, B, C and D) will have a consistent parent pb_graph_node mode, namely "LUTRAM".
*
* Usage: cluster_router uses this information to exclude the expansion of a node which has a not cosistent mode.
* Everytime the mode consistency check fails, the index of the mode that causes the conflict is added to this vector.
* Usage: cluster_router uses this information to exclude the expansion of a node which has a not consistent mode.
* Every time the mode consistency check fails, the index of the mode that causes the conflict is added to this vector.
* */
std::vector<int> illegal_modes;

Expand Down Expand Up @@ -1975,7 +1975,7 @@ struct t_arch {
bool shrink_boundary;

/// Allow routing channels to pass through multi-width and
/// multi-height programable blocks
/// multi-height programmable blocks
bool through_channel;

/// Allow each output pin of a programmable block to drive the
Expand Down
2 changes: 1 addition & 1 deletion libs/libarchfpga/src/physical_types_util.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -661,7 +661,7 @@ std::string block_type_pin_index_to_name(t_physical_tile_type_ptr type, int pin_
return pin_name;
}

return "<UNKOWN>";
return "<UNKNOWN>";
}

std::vector<std::string> block_type_class_index_to_pin_names(t_physical_tile_type_ptr type,
Expand Down
2 changes: 1 addition & 1 deletion libs/libarchfpga/src/read_fpga_interchange_arch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2304,7 +2304,7 @@ struct ArchReader {
/*
* The generic architecture data is not currently available in the interchange format
* therefore, for a very initial implementation, the values are taken from the ones
* used primarly in the Xilinx series7 devices, generated using SymbiFlow.
* used primarily in the Xilinx series7 devices, generated using SymbiFlow.
*
* As the interchange format develops further, with possibly more details, this function can
* become dynamic, allowing for different parameters for the different architectures.
Expand Down
12 changes: 6 additions & 6 deletions libs/libarchfpga/src/read_xml_arch_file.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
* help the developer build, and traverse tree (this is also sometimes referred to
* as the Document Object Model or DOM).
*
* For convenience, it often makes sense to use some wraper functions (provided in
* For convenience, it often makes sense to use some wrapper functions (provided in
* the pugiutil namespace of libvtrutil) which simplify loading an XML file and
* error handling.
*
Expand Down Expand Up @@ -429,7 +429,7 @@ void xml_read_arch(std::string_view arch_file,
char* prop = get_attribute(architecture, "version", loc_data, ReqOpt::OPTIONAL).as_string(NULL);
if (prop != NULL) {
if (atof(prop) > atof(VPR_VERSION)) {
VTR_LOG_WARN( "This architecture version is for VPR %f while your current VPR version is " VPR_VERSION ", compatability issues may arise\n",
VTR_LOG_WARN( "This architecture version is for VPR %f while your current VPR version is " VPR_VERSION ", compatibility issues may arise\n",
atof(prop));
}
}
Expand All @@ -444,7 +444,7 @@ void xml_read_arch(std::string_view arch_file,
next = get_single_child(architecture, "layout", loc_data);
process_layout(next, arch, loc_data, num_of_avail_layers);

// Precess vib_layout
// Process vib_layout
next = get_single_child(architecture, "vib_layout", loc_data, ReqOpt::OPTIONAL);
if (next) {
process_vib_layout(next, arch, loc_data);
Expand Down Expand Up @@ -2029,7 +2029,7 @@ static void process_fc(pugi::xml_node node,
}

/* Go through all the port/segment combinations and create the (potentially
* overriden) pin/seg Fc specifications */
* overridden) pin/seg Fc specifications */
for (size_t iseg = 0; iseg < segments.size(); ++iseg) {
for (int icapacity = 0; icapacity < sub_tile->capacity.total(); ++icapacity) {
//If capacity > 0, we need t offset the block index by the number of pins per instance
Expand Down Expand Up @@ -3610,7 +3610,7 @@ static void process_pin_locations(pugi::xml_node Locations,
if (!port_pins_with_specified_locations[iinst][port.name].contains(ipin)) {
//Missing
archfpga_throw(loc_data.filename_c_str(), loc_data.line(Locations),
vtr::string_fmt("Pin '%s[%d].%s[%d]' has no pin location specificed (a location is required for pattern=\"custom\")",
vtr::string_fmt("Pin '%s[%d].%s[%d]' has no pin location specified (a location is required for pattern=\"custom\")",
sub_tile->name.c_str(), iinst, port.name, ipin)
.c_str());
}
Expand Down Expand Up @@ -3820,7 +3820,7 @@ static std::vector<t_segment_inf> process_segments(pugi::xml_node parent,
if (tmp) {
segs[i].name = tmp;
} else {
/* if swich block is "custom", then you have to provide a name for segment */
/* if switch block is "custom", then you have to provide a name for segment */
if (switchblocklist_required) {
archfpga_throw(loc_data.filename_c_str(), loc_data.line(node),
vtr::string_fmt("No name specified for the segment #%d.\n", i).c_str());
Expand Down
2 changes: 1 addition & 1 deletion libs/libarchfpga/src/read_xml_arch_file_interposer.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
* @brief Parse an <interposer_cut> tag and its children
*
* @param interposer_cut_tag xml_node pointing to the <interposer_cut> tag
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for priting error messages.
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for printing error messages.
* @return t_interposer_cut_inf with parsed information of the <interposer_cut> tag
*/
t_interposer_cut_inf parse_interposer_cut_tag(pugi::xml_node interposer_cut_tag, const pugiutil::loc_data& loc_data);
14 changes: 7 additions & 7 deletions libs/libarchfpga/src/read_xml_arch_file_noc_tag.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ static void verify_noc_topology(const std::map<int, std::pair<int, int>>& router
/**
* @brief Parses the connections field in <router> tag under <topology> tag.
* The user provides the list of routers any given router is connected to
* by the router ids seperated by spaces. For example:
* by the router ids separated by spaces. For example:
* connections="1 2 3 4 5"
* Go through the connections here and store them. Also make sure the list is legal.
*
Expand Down Expand Up @@ -281,7 +281,7 @@ static void generate_noc_mesh(pugi::xml_node mesh_topology_tag,
*
* - if we instead used 2 in the distance calculation, the resulting positions would result in
* having 2 routers positioned on the start and end of the region.
* This is beacuse we now specified 2 spaces between the region and this allows us to place 2 routers
* This is because we now specified 2 spaces between the region and this allows us to place 2 routers
* on the regions edges and one router in the center.
*
* start end
Expand Down Expand Up @@ -310,7 +310,7 @@ static void generate_noc_mesh(pugi::xml_node mesh_topology_tag,

// calculate router position
/* The first and last router of each column or row will be located on the mesh region boundary,
* the remaining routers will be placed within the region and seperated from other routers
* the remaining routers will be placed within the region and separated from other routers
* using the distance calculated previously.
*/
temp_router.device_x_position = (i * horizontal_router_separation) + mesh_region.start_x;
Expand Down Expand Up @@ -449,7 +449,7 @@ static void process_router(pugi::xml_node router_tag,
// check if the user provided a legal router connection list
if (!router_connection_list_result) {
archfpga_throw(loc_data.filename_c_str(), loc_data.line(router_tag),
"The 'connections' attribute for the router must be a list of integers seperated by spaces, "
"The 'connections' attribute for the router must be a list of integers separated by spaces, "
"where each integer represents a router id that the current router is connected to.");
}

Expand Down Expand Up @@ -500,8 +500,8 @@ static bool parse_noc_router_connection_list(pugi::xml_node router_tag,
std::vector<int>& connection_list,
const std::string& connection_list_attribute_value,
std::map<int, std::pair<int, int>>& routers_in_arch_info) {
// we wil be modifying the string so store it in a temporary variable
// additionally, we process substrings seperated by spaces,
// we will be modifying the string so store it in a temporary variable
// additionally, we process substrings separated by spaces,
// so we add a space at the end of the string to be able to process the last sub-string
std::string modified_attribute_value = connection_list_attribute_value + " ";
const std::string delimiter = " ";
Expand All @@ -520,7 +520,7 @@ static bool parse_noc_router_connection_list(pugi::xml_node router_tag,
// convert the connection to an integer
single_connection >> converted_connection;

/* we expect the connection list to be a string of integers seperated by spaces,
/* we expect the connection list to be a string of integers separated by spaces,
* where each integer represents a router id that the current router is connected to.
* So we make sure that the router id was an integer.
*/
Expand Down
4 changes: 2 additions & 2 deletions libs/libarchfpga/src/read_xml_arch_file_sg.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
* @brief Parses all <sg_link> tags under a <sg_link_list> tag.
*
* @param sg_link_list_tag XML node pointing to the <sg_link_list> tag.
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for priting error messages.
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for printing error messages.
* @return std::vector<t_sg_link> the information for the sg_links in the sg_link_list.
*/
static std::vector<t_sg_link> parse_sg_link_tags(pugi::xml_node sg_link_list_tag,
Expand Down Expand Up @@ -45,7 +45,7 @@ static std::vector<t_sg_link> parse_sg_link_tags(pugi::xml_node sg_link_list_tag
* @brief Parses all <sg_location> tags under a <sg_pattern> tag.
*
* @param sg_pattern_tag XML node pointing to the <sg_pattern> tag.
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for priting error messages.
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for printing error messages.
* @return std::vector<t_sg_location> contains information of scatter gather locations.
*/
static std::vector<t_sg_location> parse_sg_location_tags(pugi::xml_node sg_pattern_tag,
Expand Down
2 changes: 1 addition & 1 deletion libs/libarchfpga/src/read_xml_arch_file_sg.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
* @param sg_list_tag XML node pointing to the <scatter_gather_patterns> tag.
* @param arch High-level architecture information. This function fills
* arch->scatter_gather_patterns with scatter-gather-related information.
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for priting error messages.
* @param loc_data Points to the location in the architecture file where the parser is reading. Used for printing error messages.
* @param switches Contains all the architecture switches. Usually same as arch->switches.
*/
void process_sg_tag(pugi::xml_node sg_list_tag,
Expand Down
4 changes: 2 additions & 2 deletions libs/libarchfpga/src/vib_inf.h
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ class VibInf {
};

/************************* VIB_GRID ***********************************/
/* Describe different VIB type on different locations by immitating t_grid_loc_def. */
/* Describe different VIB type on different locations by imitating t_grid_loc_def. */

struct t_vib_grid_loc_spec {
t_vib_grid_loc_spec(std::string start, std::string end, std::string repeat, std::string incr)
Expand Down Expand Up @@ -210,7 +210,7 @@ struct t_vib_grid_loc_def {
// the largest priority wins.

t_vib_grid_loc_spec x; //Horizontal location specification
t_vib_grid_loc_spec y; //Veritcal location specification
t_vib_grid_loc_spec y; //Vertical location specification
};

struct t_vib_layer_def {
Expand Down
2 changes: 1 addition & 1 deletion libs/libpugiutil/src/pugixml_loc.hpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#pragma once
/*
* This file contains utilities for the PUGI XML parser,
* hanlding the retrieval of line numbers (useful for error messages)
* handling the retrieval of line numbers (useful for error messages)
*/

#include <vector>
Expand Down
2 changes: 1 addition & 1 deletion libs/libpugiutil/src/pugixml_util.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ void expect_only_children(const pugi::xml_node node,
}

//Throws a well formatted error if any attribute other than those named in 'attribute_names' are found on 'node' with an additional explanation.
//Note this does not check whether the attribues in 'attribute_names' actually exist.
//Note this does not check whether the attributes in 'attribute_names' actually exist.
//
// node - The parent xml node
// attribute_names - expected attribute names
Expand Down
Loading