Ted Hong
Ted Hong
The error message from parsing the following DSLX code: ``` import std const A = u32:2; pub fn plus(in0: u32) -> u32 { in0 + B } pub fn plus_two(in0...
Timing constraints for input port to register paths and register to register paths may be different. Additional scheduler options should be added and the scheduler enhanced so that these paths...
C++ style guide https://google.github.io/styleguide/cppguide.html#General_Naming_Rules suggests that initialism such as IO and RPC be written as Io and Rpc in names. This issue is to rename IO and similar initialism to...
For code equivalent to ``` next_state = if(condition) { state } else { update(state, val, index) } ``` XLS may translate this into IR ``` array_index.9351: bits[12] = array_index(__state_0, indices=[index])...
XLS JIT'ed code can be integrated into larger simulation frameworks as part of a system-level simulation. If that system-level simulation detects a problem it is useful to be able to...
For test and verification, a workflow we want to support is to convert DSLX into IR and then run vectors through the DSLX via IR JIT. When something goes wrong,...
The following is a common pattern in DSLX code ``` A = if (condition) { B } else { A }; ``` XLS generally converts this to a select and...
Currently in order to parameterize the function interface using struct parametrics, something like the following needs to be written: ``` struct Params { bit_width : u32, num_elements : u32, }...
For array updates written in DSLX like ``` let a = for(i, o): (u32, u32[5]) in range(u32:0, u32:5) { val = i * x update(o, i, val) } ( u32[5]:[0,...
Currently, the XLS optimizer A: Does not optimize the following ``` top fn test_func(x: bits[32], y: bits[32], a: bits[32]) -> (bits[32], bits[32], bits[32]) { x1: bits[32] = add(x, a, id=4)...