DescriptionQ1070
Q1070ArchASIC interview problem
Compute every product except one channel
TechniquesPrefix productSuffix productMultiplierExact width
DifficultyMedium
TopicDatapaths
LanguageSystemVerilog
Requirements5 checkpoints
01
Problem
Accept a frame of sensor-lane gain factors and emit, for each lane, the product of every other lane's gain without using division.
Example input and output
Use this case to check your interpretationInput
accepted gains by lane = [1, 2, 3, 4]Output
products by lane = [24, 12, 8, 6]Explanation
Each output combines the prefix before its lane with the suffix after it, so division is never needed.
02
Requirements (5)
- Support 1 to 8 unsigned eight-bit gains and emit results in lane order.
- Use a 56-bit result because each output multiplies at most seven eight-bit factors.
- Return the empty product 1 for a one-lane frame and handle zero, one-zero, and multi-zero inputs naturally.
- Reuse a multiplier across bounded prefix, suffix, and output work rather than requiring division.
- Keep output lane, product, and last stable while stalled.
