-
公开(公告)号:US10833704B1
公开(公告)日:2020-11-10
申请号:US16217648
申请日:2018-12-12
Applicant: Xilinx, Inc.
Inventor: Richard L. Walke , Andrew Dow , Zahid Khan
Abstract: Low-density parity check (LDPC) decoder circuitry is configured to decode an input codeword using a plurality of circulant matrices of a parity check matrix for an LDPC code. Multiple memory banks are configured to store elements of the input codeword. A memory circuit is configured for storage of an instruction sequence. Each instruction describes for one of the circulant matrices, a corresponding layer and column of the parity check matrix and a rotation. Each instruction includes packing factor bits having a value indicative of a number of instructions of the instruction sequence to be assembled in a bundle of instructions. A bundler circuit is configured to assemble the number of instructions from the memory circuit in a bundle. The bundler circuit specifies one or more no-operation codes (NOPs) in the bundle in response to the value of the packing factor bits and provides the bundle to the decoder circuitry.
-
公开(公告)号:US10747690B2
公开(公告)日:2020-08-18
申请号:US15944307
申请日:2018-04-03
Applicant: Xilinx, Inc.
Inventor: Goran H K Bilski , Juan J. Noguera Serra , Baris Ozgul , Jan Langer , Richard L. Walke , Ralph D. Wittig , Kornelis A. Vissers , Philip B. James-Roxby , Christopher H. Dick
IPC: G06F15/78 , G06F13/16 , G06F13/40 , G06F15/173 , H04L12/933
Abstract: A device may include a plurality of data processing engines. Each data processing engine may include a core and a memory module. Each core may be configured to access the memory module in the same data processing engine and a memory module within at least one other data processing engine of the plurality of data processing engines.
-
公开(公告)号:US20190303311A1
公开(公告)日:2019-10-03
申请号:US15944307
申请日:2018-04-03
Applicant: Xilinx, Inc.
Inventor: Goran HK Bilski , Juan J. Noguera Serra , Baris Ozgul , Jan Langer , Richard L. Walke , Ralph D. Wittig , Kornelis A. Vissers , Philip B. James-Roxby , Christopher H. Dick
Abstract: A device may include a plurality of data processing engines. Each data processing engine may include a core and a memory module. Each core may be configured to access the memory module in the same data processing engine and a memory module within at least one other data processing engine of the plurality of data processing engines.
-
公开(公告)号:US11082067B1
公开(公告)日:2021-08-03
申请号:US16592381
申请日:2019-10-03
Applicant: XILINX, INC.
Inventor: Ming Ruan , Gordon I. Old , Richard L. Walke , Zahid Khan
Abstract: Embodiments described herein provide a code generation mechanism (FIG. 3, 301) in a Polar encoder (FIG. 2, 204) to determine a bit type (FIG. 3, 312) corresponding to each coded bit in the Polar code before sending the data bits for encoding (FIG. 3, 303). For example, each bit in the Polar code is determined to have a bit type of a frozen bit, parity bit, an information bit, or a cyclic redundancy check (CRC) bit based at least on the respective reliability index of the bit from a pre-computed reliability index lookup table (FIG. 4A, 411). In this way, the bit type determination can be completed in one loop by iterating the list of entries in the pre-computed reliability index lookup table.
-
公开(公告)号:US10727869B1
公开(公告)日:2020-07-28
申请号:US15938760
申请日:2018-03-28
Applicant: Xilinx, Inc.
Inventor: Richard L. Walke , Andrew Dow
Abstract: A decoder circuit includes an input to receive a first codeword encoded based on a quasi-cyclic low-density parity-check (QC LDPC) code and a plurality of memory banks to store the received codeword. Each column of the received codeword is assigned to one of the plurality of memory banks based at least in part on an order of the plurality of columns in the received codeword. A first reordering stage is to change the memory bank assignment for one or more of the plurality of columns by reordering the columns in the received codeword. An LDPC decoder is to decode the reordered codeword stored in the plurality of memory banks based at least in part on the QC LDPC code. A second reordering stage is to output the decoded codeword from the plurality of memory banks based at least in part on an order of the columns in the first codeword.
-
公开(公告)号:US10484021B1
公开(公告)日:2019-11-19
申请号:US15916090
申请日:2018-03-08
Applicant: Xilinx, Inc.
Inventor: Gordon I. Old , Richard L. Walke
Abstract: Apparatuses and methods relating generally to a decoder. In an apparatus, a control circuit receives first-third sign signals, a partial sum signal, a function select signal, and a carry signal as an input vector to provide an output sign and a vector select. A select generation circuit receives the first and second sign signals and the partial sum signal to provide an add/subtract select signal. A subtractor subtracts from a first absolute value signal a second absolute value signal to provide the third sign signal and a difference signal. Responsive to the add/subtract select signal, an adder/subtractor either adds or subtracts the first absolute value signal to or from the second absolute value signal to provide the carry signal and a sum/difference signal. A multiplexer selects from the first and second absolute value signals, the difference signal, and the sum/difference signal a selected value signal responsive to the vector select.
-
公开(公告)号:US20190303033A1
公开(公告)日:2019-10-03
申请号:US15944160
申请日:2018-04-03
Applicant: Xilinx, Inc.
Inventor: Juan J. Noguera Serra , Goran HK Bilski , Jan Langer , Baris Ozgul , Tim Tuan , Richard L. Walke , Ralph D. Wittig , Kornelis A. Vissers , Christopher H. Dick
IPC: G06F3/06
Abstract: A device may include a plurality of data processing engines. Each of the data processing engines may include a core and a memory module. The plurality of data processing engines may be organized in a plurality of rows. Each core may be configured to communicate with other neighboring data processing engines of the plurality of data processing engines by shared access to the memory modules of the neighboring data processing engines.
-
公开(公告)号:US09778905B1
公开(公告)日:2017-10-03
申请号:US14995100
申请日:2016-01-13
Applicant: Xilinx, Inc.
Inventor: Richard L. Walke
IPC: G06F7/48
CPC classification number: G06F7/4812
Abstract: A system includes an integrated circuit coupled to the memory. The integrated circuit is configured to receive first and second complex numbers at one or more data inputs. A first value is determined using a first set of product arrays of a first real number multiplier. A second value is determined using a second set of product arrays of the first real number multiplier and a third set of product arrays of a second real number multiplier. A third value is determined using a fourth set of product arrays of the second real number multiplier. A real value of a first product of the first complex number times a second complex number is determined using the first value and the second value. An imaginary value of the first product is determined using the second value and the third value.
-
公开(公告)号:US20230131698A1
公开(公告)日:2023-04-27
申请号:US18145810
申请日:2022-12-22
Applicant: Xilinx, Inc.
Inventor: Juan J. Noguera Serra , Goran HK Bilski , Jan Langer , Baris Ozgul , Richard L. Walke , Ralph D. Wittig , Kornelis A. Vissers , Tim Tuan , David Clarke
IPC: G06F3/06 , G06F15/78 , G06F15/173
Abstract: A device includes a data processing engine array having a plurality of data processing engines organized in a grid having a plurality of rows and a plurality of columns. Each data processing engine includes a core, a memory module including a memory and a direct memory access engine. Each data processing engine includes a stream switch connected to the core, the direct memory access engine, and the stream switch of one or more adjacent data processing engines. Each memory module includes a first memory interface directly coupled to the core in the same data processing engine and one or more second memory interfaces directly coupled to the core of each of the one or more adjacent data processing engines.
-
公开(公告)号:US11573726B1
公开(公告)日:2023-02-07
申请号:US17097917
申请日:2020-11-13
Applicant: Xilinx, Inc.
Inventor: Juan J. Noguera Serra , Goran H K Bilski , Jan Langer , Baris Ozgul , Richard L. Walke , Ralph D. Wittig , Kornelis A. Vissers , Christopher H. Dick , Philip B. James-Roxby
IPC: G06F3/06 , G06F15/173 , G06F15/78
Abstract: A device may include a plurality of data processing engines. Each of the data processing engines may include a memory pool having a plurality of memory banks, a plurality of cores each coupled to the memory pool and configured to access the plurality of memory banks, a memory mapped switch coupled to the memory pool and a memory mapped switch of at least one neighboring data processing engine, and a stream switch coupled to each of the plurality of cores and to a stream switch of the at least one neighboring data processing engine.
-
-
-
-
-
-
-
-
-