------------------------------------------------------------------------------ --- $Id: OneBitSubtractor.hs#1 2010/10/01 19:10:34 REDMOND\\satnams $ ------------------------------------------------------------------------------- module Lava.OneBitSubtractor where import Lava import Lava.Virtex6 ------------------------------------------------------------------------------ oneBitSubtractor :: (Bit, (Bit, Bit)) -> Out (Bit, Bit) oneBitSubtractor (cin, (a, b)) = do overlayTile $ do part_sum <- xnor2 (a, b) sum <- xorcy (part_sum, cin) cout <- muxcy (part_sum, (a, cin)) return (sum, cout) -------------------------------------------------------------------------------