diff options
Diffstat (limited to 'docs/src/wiki-deprecated/functional-abstraction.md')
| -rw-r--r-- | docs/src/wiki-deprecated/functional-abstraction.md | 29 |
1 files changed, 0 insertions, 29 deletions
diff --git a/docs/src/wiki-deprecated/functional-abstraction.md b/docs/src/wiki-deprecated/functional-abstraction.md deleted file mode 100644 index 04dde7d1..00000000 --- a/docs/src/wiki-deprecated/functional-abstraction.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -layout: docs -title: "Functional Abstraction" -section: "chisel3" ---- -We can define functions to factor out a repeated piece of logic that -we later reuse multiple times in a design. For example, we can wrap -up our earlier example of a simple combinational logic block as -follows: -```scala -def clb(a: UInt, b: UInt, c: UInt, d: UInt): UInt = - (a & b) | (~c & d) -``` - -where ```clb``` is the function which takes ```a```, ```b```, -```c```, ```d``` as arguments and returns a wire to the output of a -boolean circuit. The ```def``` keyword is part of Scala and -introduces a function definition, with each argument followed by a colon then its type, -and the function return type given after the colon following the -argument list. The equals (```=})```sign separates the function argument list from the function -definition. - -We can then use the block in another circuit as follows: -```scala -val out = clb(a,b,c,d) -``` - -We will later describe many powerful ways to use functions to -construct hardware using Scala's functional programming support. |
