aboutsummaryrefslogtreecommitdiffstats
path: root/src/VeriFuzz/Sim/Vivado.hs
diff options
context:
space:
mode:
authorYann Herklotz <git@yannherklotz.com>2019-09-04 20:15:51 +1000
committerYann Herklotz <git@yannherklotz.com>2019-09-04 20:15:51 +1000
commita2b01b92612a098673ff03890e6e8aef4ceb28ea (patch)
tree15cafe6ba47981938552a4b342a56795251aadc5 /src/VeriFuzz/Sim/Vivado.hs
parentcccb665ebac6e916c4f961eacbe11a9af7d7ceb3 (diff)
downloadverismith-a2b01b92612a098673ff03890e6e8aef4ceb28ea.tar.gz
verismith-a2b01b92612a098673ff03890e6e8aef4ceb28ea.zip
Renaming to VeriSmith
Diffstat (limited to 'src/VeriFuzz/Sim/Vivado.hs')
-rw-r--r--src/VeriFuzz/Sim/Vivado.hs71
1 files changed, 0 insertions, 71 deletions
diff --git a/src/VeriFuzz/Sim/Vivado.hs b/src/VeriFuzz/Sim/Vivado.hs
deleted file mode 100644
index e8d8f0d..0000000
--- a/src/VeriFuzz/Sim/Vivado.hs
+++ /dev/null
@@ -1,71 +0,0 @@
-{-|
-Module : VeriSmith.Sim.Vivado
-Description : Vivado Synthesiser implementation.
-Copyright : (c) 2019, Yann Herklotz Grave
-License : GPL-3
-Maintainer : yann [at] yannherklotz [dot] com
-Stability : experimental
-Portability : POSIX
-
-Vivado Synthesiser implementation.
--}
-
-module VeriSmith.Sim.Vivado
- ( Vivado(..)
- , defaultVivado
- )
-where
-
-import Control.DeepSeq (NFData, rnf, rwhnf)
-import Data.Text (Text, unpack)
-import Prelude hiding (FilePath)
-import Shelly
-import Shelly.Lifted (liftSh)
-import VeriSmith.Sim.Internal
-import VeriSmith.Sim.Template
-import VeriSmith.Verilog.AST
-import VeriSmith.Verilog.CodeGen
-
-data Vivado = Vivado { vivadoBin :: !(Maybe FilePath)
- , vivadoDesc :: {-# UNPACK #-} !Text
- , vivadoOutput :: {-# UNPACK #-} !FilePath
- }
- deriving (Eq)
-
-instance Tool Vivado where
- toText (Vivado _ t _) = t
-
-instance Show Vivado where
- show t = unpack $ toText t
-
-instance Synthesiser Vivado where
- runSynth = runSynthVivado
- synthOutput = vivadoOutput
- setSynthOutput (Vivado a b _) = Vivado a b
-
-instance NFData Vivado where
- rnf = rwhnf
-
-defaultVivado :: Vivado
-defaultVivado = Vivado Nothing "vivado" "syn_vivado.v"
-
-runSynthVivado :: Vivado -> SourceInfo -> ResultSh ()
-runSynthVivado sim (SourceInfo top src) = do
- dir <- liftSh pwd
- liftSh $ do
- writefile vivadoTcl . vivadoSynthConfig top . toTextIgnore $ synthOutput
- sim
- writefile "rtl.v" $ genSource src
- run_
- "sed"
- [ "s/^module/(* use_dsp48=\"no\" *) (* use_dsp=\"no\" *) module/;"
- , "-i"
- , "rtl.v"
- ]
- let exec_ n = execute_
- SynthFail
- dir
- "vivado"
- (maybe (fromText n) (</> fromText n) $ vivadoBin sim)
- exec_ "vivado" ["-mode", "batch", "-source", toTextIgnore vivadoTcl]
- where vivadoTcl = fromText ("vivado_" <> top) <.> "tcl"