From a4f7aa2b81a021f21a49bd4059d051bc0f949880 Mon Sep 17 00:00:00 2001 From: azidar Date: Wed, 22 Apr 2015 15:24:18 -0700 Subject: Switched to stricter primop width constraints. Implemented Pad. Added some missing primops --- TODO | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'TODO') diff --git a/TODO b/TODO index bf847a6f..4a099d94 100644 --- a/TODO +++ b/TODO @@ -8,8 +8,10 @@ Parser Error if incorrectly assign stuff, like use = instead of := Update parser and update tests Change all primops to be strict on data widths +Add pad! Make instances always male, flip the bundles on declaration dlsh,drsh +move Infer-Widths to before vec expansion? ======== Update Core ========== Add source locaters @@ -25,6 +27,8 @@ Well-formed high firrtl Subfields are only on bundles, before type inference Can only connect to a Ref or Subfield or Index UInt only has positive ints + No combinational loops + cannot connect to a pad, or a register. only connct to a reference After adding dynamic assertions, insert bounds check with accessor expansion Well-formed low firrtl All things only assigned to once @@ -32,6 +36,7 @@ Well-formed low firrtl ======== Other Passes ======== constant folding (partial eval) pass common subexpression elimination pass +Verilog backend ======== Consultations ======== Stephen: @@ -52,6 +57,10 @@ Figure out how widths propogate for all updated primops (Adam) Add partial bulk connect (Scott, Stephen) Add FIFOs to the IR (Palmer) Think about supporting generic primops on bundles and vecs (Adam) (wait until front-end more completed) +Union Types +Enums? +Convert to scala +Firrtl interpreter (in scala) ======== Update Spec ======== Add Not to spec -- cgit v1.2.3 From 7f8758420a2a46d7cf19441e9fbd1dba82cae612 Mon Sep 17 00:00:00 2001 From: azidar Date: Thu, 23 Apr 2015 11:43:11 -0700 Subject: Fixed Pad inference bug --- TODO | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'TODO') diff --git a/TODO b/TODO index 4a099d94..818b78c3 100644 --- a/TODO +++ b/TODO @@ -7,8 +7,6 @@ on-reset Parser Error if incorrectly assign stuff, like use = instead of := Update parser and update tests -Change all primops to be strict on data widths -Add pad! Make instances always male, flip the bundles on declaration dlsh,drsh move Infer-Widths to before vec expansion? @@ -32,6 +30,12 @@ Well-formed high firrtl After adding dynamic assertions, insert bounds check with accessor expansion Well-formed low firrtl All things only assigned to once +Width inference + No names + No Unknowns + All widths are positive + Pad's width is greater than value's width + pad's width is greater than value's width ======== Other Passes ======== constant folding (partial eval) pass -- cgit v1.2.3