Add an info view.
This commit is contained in:
parent
6a06a99529
commit
0cb9eb34d0
|
@ -4,7 +4,7 @@ import CacheSim.Model exposing (..)
|
|||
import CacheSim.Cache exposing (..)
|
||||
import CacheSim.AccessView exposing (..)
|
||||
import CacheSim.Hierarchy exposing (..)
|
||||
import Html exposing (Html, Attribute, input, text, div, label, span, h2, h3, table, tr, td, th)
|
||||
import Html exposing (Html, Attribute, input, text, div, label, span, h2, h3, table, tr, td, th, p, h1)
|
||||
import Html.Attributes exposing (type_, class, value, for, classList, disabled, colspan, hidden)
|
||||
import Html.Events exposing (onInput, onClick)
|
||||
|
||||
|
@ -178,7 +178,7 @@ viewAccessLog : AccessView -> Html Msg
|
|||
viewAccessLog (aes, ap) =
|
||||
let
|
||||
resultSpan r =
|
||||
span [ classList [ ("badge", True), ("badge-danger", True), ("badge-success", r == Hit) ] ]
|
||||
span [ classList [ ("badge", True), ("badge-success", r == Hit), ("badge-danger", r == Miss) ] ]
|
||||
[ text <| if r == Hit then "Hit" else "Miss" ]
|
||||
downEvent n ae = div [ class "event" ]
|
||||
[ text <| "L" ++ String.fromInt (n + 1) ++ " "
|
||||
|
@ -213,6 +213,23 @@ viewAccessInput m =
|
|||
, accessButton
|
||||
]
|
||||
|
||||
viewDescription : Html Msg
|
||||
viewDescription =
|
||||
div []
|
||||
[ h1 [] [ text "Cache simulator" ]
|
||||
, p []
|
||||
[ text <| "This is a simulator for testing various cache configurations for educational purposes. It allows for the creation of"
|
||||
++ " n-way associative caches, and their special cases (direct mapped and fully associative caches)."
|
||||
]
|
||||
, p []
|
||||
[ text <| "To use the simulator, first create a fitting cache configuration by using the \"Add level\" button,"
|
||||
++ " as well as the settings provided by each individual cache level. When the cache is correctly specified, and"
|
||||
++ " no warnings appear, click \"Use hierarchy\" to load the specified hierarchy and begin simulating. To simulate,"
|
||||
++ " type a block address into the \"Access address\" field, and click \"Access\". This will bring forward the simulation"
|
||||
++ " view, which will allow you to step through the steps of accessing a cache."
|
||||
]
|
||||
]
|
||||
|
||||
viewBase : Model -> Html Msg
|
||||
viewBase m =
|
||||
let
|
||||
|
@ -230,4 +247,4 @@ viewBase m =
|
|||
accessInputView = [ viewAccessInput m ]
|
||||
in
|
||||
div [ class "container" ]
|
||||
<| rawView ++ cacheView ++ accessView ++ accessInputView
|
||||
<| [ viewDescription] ++ rawView ++ cacheView ++ accessView ++ accessInputView
|
||||
|
|
Loading…
Reference in New Issue
Block a user