diff --git a/meta_module/README.md b/meta_module/README.md new file mode 100644 index 0000000..5e48936 --- /dev/null +++ b/meta_module/README.md @@ -0,0 +1,42 @@ +META +================================= + + + +## Summary +* Meta Module with 256 RISC CPU (4x4 grid of E16G301 chips) +* meta Carrier with programmable power, clocks, FMC connector +* Up to 16 elinks per module +* PCI/104 form factor (3.775" x 3.55") +* <32 Watt per module + +## Documentation +[Reference Manual](docs/meta_reference.pdf) + +## Meta Carrier Sources +* [Schematics (PDF)](src/meta_carrier_sch_rev1.dsn) +* [Schematics (Orcad)](src/meta_carrier_sch_rev1.dsn) +* [Layout (Allegro)](src/meta_carrier_lay_rev1.brd) +* [BOM](src/meta_carrier_bom_rev1.xls) + +## Meta Module Sources +* [Schematics (PDF)](src/meta_module_sch_rev1.dsn) +* [Schematics (Orcad)](src/meta_module_sch_rev1.dsn) +* [Layout (Allegro)](src/meta_module_lay_rev1.brd) +* [BOM](src/meta_module_bom_rev1.xls) + +## License + +Licensed under Creative Commons Attribution-Share Alike 3.0 License by Andreas Olofsson +https://creativecommons.org/licenses/by-sa/3.0/legalcode + +## Status + +Prototype + +## Authors + +[Andreas Olofsson](https://github.com/aolofsson) + + + diff --git a/meta_module/docs/meta_back.jpg b/meta_module/docs/meta_back.jpg new file mode 100644 index 0000000..e71385b Binary files /dev/null and b/meta_module/docs/meta_back.jpg differ diff --git a/meta_module/docs/meta_front.jpg b/meta_module/docs/meta_front.jpg new file mode 100644 index 0000000..08f4acd Binary files /dev/null and b/meta_module/docs/meta_front.jpg differ diff --git a/meta_module/docs/meta_module_layout.png b/meta_module/docs/meta_module_layout.png new file mode 100644 index 0000000..af0349e Binary files /dev/null and b/meta_module/docs/meta_module_layout.png differ diff --git a/meta_module/docs/meta_module_ref.md b/meta_module/docs/meta_module_ref.md new file mode 100644 index 0000000..ff2b729 --- /dev/null +++ b/meta_module/docs/meta_module_ref.md @@ -0,0 +1,84 @@ +Meta Reference Manual +============================================================ + +Overview +Meta Functional Description + Epiphany Memory Map + Elink Connectors + Control Connector + FMC Connector + I2C Connector + Parallella Connectors + Clock Management + Power Management + System Reset Sequence + Coordinate Dip Switch + Cooling + Mechanical Specifications +Warranty/Disclaimers +License + +# Meta Functional Description + +## Epiphany Memory Map + +Each Epiphany chip in the Meta system has a unique memory range set through on-board resistors and the ROW/COLUMN coodinate set with dip-switches on the Meta-Carrier. The following table shows the offset of each core within the Meta System. To get the exact absolute address offset for an Epiphany core, add together the address module address, chip address, and core address. + +For example, the offset address of core (0,0) in chip (0,2) on module (2,0) would be : 0x80800000 + +Table: Meta-System Memory Map + +|Coordinate | Module | Chip | Core | +|:----------:|:-----------:|:----------:|:-----------:| +|(0,0) | 0x00000000 | 0x00000000 | 0x00000000 | +|(0,1) | 0x01000000 | 0x00400000 | 0x00100000 | +|(0,2) | 0x02000000 | 0x00800000 | 0x00200000 | +|(0,3) | 0x03000000 | 0x00C00000 | 0x00300000 | +|(1,0) | 0x40000000 | 0x10000000 | 0x04000000 | +|(1,1) | 0x41000000 | 0x10400000 | 0x04100000 | +|(1,2) | 0x42000000 | 0x10800000 | 0x04200000 | +|(1,3) | 0x43000000 | 0x10C00000 | 0x04300000 | +|(2,0) | 0x80000000 | 0x20000000 | 0x08000000 | +|(2,1) | 0x81000000 | 0x20400000 | 0x08100000 | +|(2,2) | 0x82000000 | 0x20800000 | 0x08200000 | +|(2,3) | 0x83000000 | 0x20C00000 | 0x08300000 | +|(3,0) | 0xC0000000 | 0x30000000 | 0x0C000000 | +|(3,1) | 0xC1000000 | 0x30400000 | 0x0C100000 | +|(3,2) | 0xC2000000 | 0x30800000 | 0x0C200000 | +|(3,3) | 0xC3000000 | 0x30C00000 | 0x0C300000 | + +\newpage + +## Elink Connectors + +Each Meta-Module has four Epiphany-elink board to board connectors (north, east, west, south), with each connector supporting four independent bidirectional Epiphany elinks. +The Meta-Module connects to the Meta-Carrier as a tightly coupled sandwich. + +The Elink connector pinout is shown in the following tables. + +Table: South and West Elink Connectors + +| Pin # | Signal | Pin # | Signal | Pin # | Signal | Pin # | Signal | +|-------|--------|-------|--------|-------|--------|-------|--------| + + + +## Control Connector + +The reset and clocking signals for the Meta-Module is provided by the Meta-Carrier through the control connector. + +# Meta Warranty/Disclaimers + +THERE IS NO WARRANTY FOR THE DESIGN MATERIALS DESCRIBED IN THIS REFERENCE MANUAL, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE DESIGN MATERIALS “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE DESIGN MATERIALS IS WITH YOU. SHOULD THE DESIGN MATERIALS PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. THE FOREGOING LIMITED WARRANTY IS THE EXCLUSIVE WARRANTY MADE BY SELLER TO BUYER AND IS IN LIEU OF ALL OTHER WARRANTIES, EXPRESSED, IMPLIED, OR STATUTORY, INCLUDING ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE. EXCEPT TO THE EXTENT OF THE INDEMNITY SET FORTH ABOVE, NEITHER PARTY SHALL BE LIABLE TO THE OTHER FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES. + +# License + +This reference manual and all Meta board design files are licensed under the Creative Commons Attribution-Share Alike 3.0 License. To view a copy of this license, visit: + +http://creativecommons.org/licenses/bysa/3.0/ + +All derivative works are to be attributed to Andreas Olofsson. + + + + diff --git a/meta_module/docs/meta_module_ref.pdf b/meta_module/docs/meta_module_ref.pdf new file mode 100644 index 0000000..6402a19 Binary files /dev/null and b/meta_module/docs/meta_module_ref.pdf differ diff --git a/meta_module/docs/meta_module_sch_rev1.pdf b/meta_module/docs/meta_module_sch_rev1.pdf new file mode 100644 index 0000000..e870413 Binary files /dev/null and b/meta_module/docs/meta_module_sch_rev1.pdf differ diff --git a/meta_module/docs/meta_reference.pdf b/meta_module/docs/meta_reference.pdf new file mode 100644 index 0000000..2352a7d Binary files /dev/null and b/meta_module/docs/meta_reference.pdf differ diff --git a/meta_module/docs/run.sh b/meta_module/docs/run.sh new file mode 100755 index 0000000..84dd42d --- /dev/null +++ b/meta_module/docs/run.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +pandoc meta_module_ref.md -V geometry:margin=1in --template=template.tex --latex-engine=xelatex -o meta_module_ref.pdf + diff --git a/meta_module/docs/template.tex b/meta_module/docs/template.tex new file mode 100644 index 0000000..2e7983c --- /dev/null +++ b/meta_module/docs/template.tex @@ -0,0 +1,217 @@ +\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$lang$,$endif$$if(papersize)$$papersize$,$endif$$for(classoption)$$classoption$$sep$,$endfor$]{$documentclass$} +$if(fontfamily)$ +\usepackage{$fontfamily$} +$else$ +\usepackage{lmodern} +$endif$ +$if(linestretch)$ +\usepackage{setspace} +\setstretch{$linestretch$} +$endif$ +\usepackage{amssymb,amsmath} +\usepackage{ifxetex,ifluatex} +\usepackage{fixltx2e} % provides \textsubscript +\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex + \usepackage[T1]{fontenc} + \usepackage[utf8]{inputenc} +$if(euro)$ + \usepackage{eurosym} +$endif$ +\else % if luatex or xelatex + \ifxetex + \usepackage{mathspec} + \usepackage{xltxtra,xunicode} + \else + \usepackage{fontspec} + \fi + \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase} + \newcommand{\euro}{€} +$if(mainfont)$ + \setmainfont{$mainfont$} +$endif$ +$if(sansfont)$ + \setsansfont{$sansfont$} +$endif$ +$if(monofont)$ + \setmonofont[Mapping=tex-ansi]{$monofont$} +$endif$ +$if(mathfont)$ + \setmathfont(Digits,Latin,Greek){$mathfont$} +$endif$ +\fi +% use upquote if available, for straight quotes in verbatim environments +\IfFileExists{upquote.sty}{\usepackage{upquote}}{} +% use microtype if available +\IfFileExists{microtype.sty}{% +\usepackage{microtype} +\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts +}{} +$if(geometry)$ +\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry} +$endif$ +\ifxetex + \usepackage[setpagesize=false, % page size defined by xetex + unicode=false, % unicode breaks when used with xetex + xetex]{hyperref} +\else + \usepackage[unicode=true]{hyperref} +\fi +\hypersetup{breaklinks=true, + bookmarks=true, + pdfauthor={$author-meta$}, + pdftitle={$title-meta$}, + colorlinks=true, + citecolor=$if(citecolor)$$citecolor$$else$blue$endif$, + urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$, + linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$, + pdfborder={0 0 0}} +\urlstyle{same} % don't use monospace font for urls +\usepackage{fancyhdr} +\pagestyle{fancy} +\pagenumbering{arabic} +\lhead{\itshape $title$} +\chead{} +\rhead{\itshape{\nouppercase{\leftmark}}} +\cfoot{} +\rfoot{\thepage} +$if(lang)$ +\ifxetex + \usepackage{polyglossia} + \setmainlanguage{$mainlang$} + \setotherlanguages{$for(otherlang)$$otherlang$$sep$,$endfor$} +\else + \usepackage[shorthands=off,$lang$]{babel} +\fi +$endif$ +$if(natbib)$ +\usepackage{natbib} +\bibliographystyle{$if(biblio-style)$$biblio-style$$else$plainnat$endif$} +$endif$ +$if(biblatex)$ +\usepackage{biblatex} +$for(bibliography)$ +\addbibresource{$bibliography$} +$endfor$ +$endif$ +$if(listings)$ +\usepackage{listings} +$endif$ +$if(lhs)$ +\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{} +$endif$ +$if(highlighting-macros)$ +$highlighting-macros$ +$endif$ +$if(verbatim-in-note)$ +\usepackage{fancyvrb} +\VerbatimFootnotes +$endif$ +$if(tables)$ +\usepackage{longtable,booktabs} +$endif$ +$if(graphics)$ +\usepackage{graphicx,grffile} +\makeatletter +\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi} +\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi} +\makeatother +% Scale images if necessary, so that they will not overflow the page +% margins by default, and it is still possible to overwrite the defaults +% using explicit options in \includegraphics[width, height, ...]{} +\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio} +$endif$ +$if(links-as-notes)$ +% Make links footnotes instead of hotlinks: +\renewcommand{\href}[2]{#2\footnote{\url{#1}}} +$endif$ +$if(strikeout)$ +\usepackage[normalem]{ulem} +% avoid problems with \sout in headers with hyperref: +\pdfstringdefDisableCommands{\renewcommand{\sout}{}} +$endif$ +\setlength{\parindent}{0pt} +\setlength{\parskip}{6pt plus 2pt minus 1pt} +\setlength{\emergencystretch}{3em} % prevent overfull lines +\providecommand{\tightlist}{% + \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}} +$if(numbersections)$ +\setcounter{secnumdepth}{5} +$else$ +\setcounter{secnumdepth}{0} +$endif$ +$if(verbatim-in-note)$ +\VerbatimFootnotes % allows verbatim text in footnotes +$endif$ + +$if(title)$ +\title{$title$$if(subtitle)$\\\vspace{0.5em}{\large $subtitle$}$endif$} +$endif$ +$if(author)$ +\author{$for(author)$$author$$sep$ \and $endfor$} +$endif$ +\date{$date$} +$for(header-includes)$ +$header-includes$ +$endfor$ + +% Redefines (sub)paragraphs to behave more like sections +\ifx\paragraph\undefined\else +\let\oldparagraph\paragraph +\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}} +\fi +\ifx\subparagraph\undefined\else +\let\oldsubparagraph\subparagraph +\renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}} +\fi + +\begin{document} +$if(title)$ +\maketitle +$endif$ +$if(abstract)$ +\begin{abstract} +$abstract$ +\end{abstract} +$endif$ + +$for(include-before)$ +$include-before$ + +$endfor$ +$if(toc)$ +{ +\hypersetup{linkcolor=$if(toccolor)$$toccolor$$else$black$endif$} +\setcounter{tocdepth}{$toc-depth$} +\tableofcontents +} +$endif$ +$if(lot)$ +\listoftables +$endif$ +$if(lof)$ +\listoffigures +$endif$ +$body$ + +$if(natbib)$ +$if(bibliography)$ +$if(biblio-title)$ +$if(book-class)$ +\renewcommand\bibname{$biblio-title$} +$else$ +\renewcommand\refname{$biblio-title$} +$endif$ +$endif$ +\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$} + +$endif$ +$endif$ +$if(biblatex)$ +\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$ + +$endif$ +$for(include-after)$ +$include-after$ + +$endfor$ +\end{document} diff --git a/meta_module/mfg/meta_module_fab_rev1.zip b/meta_module/mfg/meta_module_fab_rev1.zip new file mode 100644 index 0000000..edc0bf0 Binary files /dev/null and b/meta_module/mfg/meta_module_fab_rev1.zip differ diff --git a/meta_module/mfg/meta_module_odb_rev1.zip b/meta_module/mfg/meta_module_odb_rev1.zip new file mode 100644 index 0000000..13c801c Binary files /dev/null and b/meta_module/mfg/meta_module_odb_rev1.zip differ diff --git a/meta_module/src/meta_module_bom_rev1.xlsx b/meta_module/src/meta_module_bom_rev1.xlsx new file mode 100644 index 0000000..29c3e88 Binary files /dev/null and b/meta_module/src/meta_module_bom_rev1.xlsx differ diff --git a/meta_module/src/meta_module_lay_rev1.brd b/meta_module/src/meta_module_lay_rev1.brd new file mode 100644 index 0000000..f3ca1e4 Binary files /dev/null and b/meta_module/src/meta_module_lay_rev1.brd differ diff --git a/meta_module/src/meta_module_sch_rev1.dsn b/meta_module/src/meta_module_sch_rev1.dsn new file mode 100644 index 0000000..6c45c7e Binary files /dev/null and b/meta_module/src/meta_module_sch_rev1.dsn differ