OpenLLM-France/wikimedia huggingface dataset:
# Programmable Logic/Verilog Control Structures
## Procedural Code

Verilog has a number of high-level control structures that can be used to perform complicated tasks with some level of abstraction. These control structures should be familiar to people who have experience programming in high-level computer software languages, such as C or Java.
It is important to note that not all constructs in verilog are compatible with these high-level control structures. Wires and continuous assignments are not generally compatible with these structures, and trying to combine them may either lead to compiler errors or synthesis errors.

## If-Else

IF structures test a particular condition, and execute the following code statement if that condition is true. Following an IF block can be an optional ELSE block, that will be executed if the condition is not true.
IF-ELSE structures can be expanded to account for more than two possibilities by nesting. The pseudocode example below demonstrates this:
It is worth noting that additional resources will be generated to handle conditions that aren't accounted for in the IF-ELSE chain. This means that it is typically more efficient to account for all possibilities than to ignore some.

## While

A WHILE loop executes repeatedly, so long as the condition is true. The condition is tested before each execution of the loop.

## Switch-Case

SWITCH-CASE structures are similar to nested IF-ELSE structures, except they tend to reduce to more efficient hardware structures.

### CASEZ
## Code Blocks

Code blocks are designated through use of the keywords begin and end. Code blocks can be put anywhere that a single statement is valid, but where more than one statement needs to be executed.
Code blocks can be nested.
Variables declared in a code block are lexically scoped to that block.

### Naming and leaving Code Blocks

Above described blocks of code can be named, like
In combination with the prior described loop constructs, a superior equivalence of Verilog to the break command in C is disable, which receives the name of the block to leave as an argument:
In testbeds, one may also decide to use $finish or $stop to break from an execution.
# Programmable Logic/Verilog Always and Initial

This page is going to look at the Verilog keywords always and initial

## Synchronous and Asynchronous

always blocks can be either synchronous or asynchronous structures. The instructions inside these structures are said to occur synchronously with the given condition, or asynchronously (if no condition is specified).

## Initial Blocks

Initial blocks can be used in either synthesizable or non-synthesizable blocks. They are commonly used in test benches. Initial blocks cause certain instructions to be performed at the beginning of the simulation, before any other instructions operate. Initial blocks only operate once.
A synthesizable initial block can be used to set the power-on value of registers, RAM, and ROM within FPGAs. However, initial blocks cannot be synthesized in CPLDs or ASICs.

## Always Blocks

Always blocks describe things that should repeat indefinitely, or things that should repeat on a given synchronization condition. An always block with no condition is asynchronous:
This block of code will continuously execute regardless of the clock signal of the circuit.

### Restrictions

Hardware modules may not be instantiated inside an always block. All of the always blocks in a module are considered to be parallel blocks of hardware. Likewise, modules are considered to be separate hardware blocks that operate in parallel. Functions, however, can be instantiated in an always block.
A wire or register may not be written to by more than one always block. A wand or wor can, however, be written by multiple blocks.it assigns the values to

## Always @

The always @ structure is a synchronous condition structure. It takes the form:
Where <condition> can be either posedge, negedge, or omitted. The <signal> parameter is the signal to be synchronized against (usually a clock signal). For instance, if we want a particular block of code to execute at the positive edge of every clock pulse, we would write:
If we do not put in either posedge or negedge qualifiers, the always block will be triggered at every change (every positive and negative edge of the signal). For example:
will perform at the positive and negative edges of the clock signal.

### Implementations

Always blocks can be considered to be circuit constructs where the input to that circuit is controlled by a latch. The event that triggers the always block is considered to be the clock input to the latch. The circuit only receives new input when the correct condition is received on the latch's trigger input.

## Edge-Triggers

The keywords posedge and negedge are edge trigger conditions, and are only used with always blocks.
# Programmable Logic/Verilog Module Structure
## Verilog Modules

Modules are the fundamental descriptive units in Verilog HDL. Verilog modules, like functions in other programming languages, are pieces of code that can be used and reused within a single program. Verilog modules are declared using the module keyword, and are ended with the endmodule keyword.

## Module Format

Basic Modules are laid out as follows:
The module is declared with a module name (in this case, "MyModule"), followed by a list of parameters. Parameters in this case are a list of input and output signals (also called the 'port list') that the module can interact with. If we synthesize our Verilog code, the parameters will signify the physical wire connections that connect our module to the rest of the microchip. Note that in the parameter list, we do not need to specify what the type of the connection is, or whether it is an input or an output. We do that in the next few lines. Here is an example module declaration with some parameters:

## Inputs and Outputs

In Verilog, all inputs and outputs are passed through the parameter list. A module requires this list of input and output ports to interact with the environment.
Modules do not return a value in the same way that a C function or a Java function can return a value. Therefore, we use the input and output keywords to specify which parameters are going which direction:
output connections are generally not initialized, so it is bad practice to attempt to read from a connection specified as an output.

## Instance Identifiers

When calling a Verilog module from a higher-level module, we need to include an instance identifier. This is done because when we synthesize our code onto a physical chip, functions that need to be called multiple times in parallel are actually created multiple times! This means that if we want the same module to execute with itself in parallel, we need to instruct the synthesizer program to create multiple physical copies of the module. Furthermore, using instance identifiers allows oneself to "wire" multiple modules together (i.e. if we wanted the output of one module to be the input of another module). For the first definition exemplified, let's say we have a module AND that's defined as such:
If we want to use AND in another module, we need to call it as follows:
Notice how we place an identifier in between the module name "AND" and the parameter list? This is an instance identifier. Note that we are defining 3 separate instances of the module AND.
An identifier can be composed of Alphanumeric characters and underscore(_), and it cannot begin with a number.
# Programmable Logic/Verilog Tasks
## "task"

A task is enabled from a statement that defines the argument values to be passed to the task and the variables that will receive the results. Control is passed back to the enabling process after the task has completed. Thus, if a task has timing controls inside it, then the time of enabling can be different from the time at which control is returned. A task can enable other tasks, which in turn can enable still other tasks—with no limit on the number of tasks enabled. Regardless of how many tasks have been enabled, control does not return until all enabled tasks have completed.

## Using Tasks

[Task_name]([variable list]);

## Calling Tasks

Defining a T ask The following is the syntax for defining tasks: Syntax 9-1: Syntax for <task> Task and function declarations specify the following: local variables I/O ports registers times integers real events These declarations all have the same syntax as for the corresponding declarations in a module definition. If there is more than one output, input, and inout port declared in a task these must be enclosed within a block. <task>
       = task <name_of_task> ;
<tf_declaration>* <statement_or_null> endtask <name_of_task>
       = <IDENTIFIER>
<tf_declaration>
       = <parameter_declaration>
||= <input_declaration> ||= <output_declaration> ||= <inout_declaration> ||= <reg_declaration> ||= <time_declaration> ||= <integer_declaration> ||= <real_declaration> ||= <event_declaration>
# Proteomics/Protein Separations - Centrifugation/CENTRIFUGATION

* Centrifugation
* Some fundamental physical and mathematical concepts
* Centrifugal fractionation of tissues and cells: Basic approaches and instrumentation
* Density gradient centrifugation: Preparing gradients and measuring density
* Density Gradient centrifuation: Rate and isopynic separations of particles

## Centrifugation

Centrifugation is one of the most important and widely applied research techniques in biochemistry, in cellular and molecular biology, and in medicine. In its various forms, centrifugation is regularly used to:
(1) remove cells or other suspended particles from their surrounding milieu on either a batch or a continous-flow basis.
(2)separate one cell type from another.
(3)isolate viruses and macromolecules, including DNA,RNA,proteins, and lipids or establish physical parameters of these particles fron their observed behavior during centrifugation.
(4)separate from dispersed tissue the various subcellular organelles including nuclei, mitochondria, cholorplasts, golgi bodies , lysosomes, peroxisomes, glyoxysomes, plasma membranes, endoplasmic reticulum , polysomes, and ribosomal subunits.
Reference: Centrifugation in Biology and Medical Science==Author Phillip sheeler, dept of biology , california state university, northridge, california
# Proteomics/Protein Separations- Electrophoresis/Web Pages

* American Electrophoresis Society,
** This website has descriptions of current electrophoretic separation and detection methods
* Corbett Learning,
** This site includes a simulation of the basic steps involved in electrophoresis
* Separations Now,
** This site includes new articles concerning recent advances in electrophoresis
* ExPasy Proteomics Server,
** This site is monitored by the Swiss Institute of Bioinformatics. ExPasy stands for Expert Protein Analysis System. Databases, proteomics tools and information on molecular biology are provided.
* Joint Proteomics Laboratory,
** This is the webpage of the Ludwig Institute for Cancer Research whose focus is on developing techniques for protein separation.
< Previous page | Next page >
# Proteomics/Protein Separations - Centrifugation
### Presentation

| Protein Separations- Electrophoresis/Introduction to Electrophoresis | Protein Separations - Centrifugation | Emerging and Miscellaneous Proteomics Technologies | List of Topics | Emerging and Miscellaneous Proteomics Technologies |

## Introduction to Centrifugation

Centrifugation is one of the most important and widely applied research techniques in biochemistry, cellular and molecular biology, and in medicine. In the field of proteomics it plays a vital role in the fundamental and necessary process of isolating proteins. This process begins with intact cells or tissues. Before the proteins can be obtained, the cells must be broken open by processes such as snap freezing, sonication, homogenization by high pressure, or grinding with liquid nitrogen. Once the cells have been opened up all of their contents; including cell membranes, RNA, DNA, and organelles will be mixed in the solvent with the proteins. Centrifugation is probably the most commonly used method for separating out all the non protein material. Within the centrifuge samples are spun at high speeds and the resulting force causes particles to separate based on their density.

## Uses of Centrifugation

Centrifugation is capable of:
* Removing cells or other suspended particles from their surrounding milieu on either a batch or a continous-flow basis
* Separating one cell type from another
* Isolating viruses and macromolecules, including DNA, RNA, proteins, and lipids or establishing physical parameters of these particles from their observed behavior during centrifugation
* Separating from dispersed tissue the various subcellular organelles including nuclei, mitochondria, cholorplasts, golgi bodies, lysosomes, peroxisomes, glyoxysomes, plasma membranes, endoplasmic reticulum, polysomes, and ribosomal subunits.
Once the mixture of proteins has been isolated using centrifugation the scientist is then able to use one of several methods to separate out individual proteins for further study. For more information on protein purification/separation see Protein Separations – Chromatography and Protein Separations– Electrophoresis.
Next section: History of the Centrifuge

## References
### Subscription Based References

* Sheeler, P. "Centrifugation in Biology and Medical Science." Dept of Biology, California State University, Northridge, California

### Open Access References

* Claude, A. & Potter, J. S. "Isolation of Chromatin Threads From The Reasting Nucleus of Leukemic Cells" The Journal of Experimental Medicine.
# Pinyin/Apricot

See also
An apricot is a juicy, soft fruit of an red-yellow color.
xihngtaor shih horng-huarngseh d, rourruaan d duozhi shuiiguoo.
# Pinyin/Appearance

Appearance is the way that somebody or something looks on the outside.
waihbiaao shih shihwuh d waihguan.
# Pinyin/Apple

Search Pinyin apple

## Proper noun

* Apple: a technology company
** Apple: 1'g kejih gongsi

## Noun

* apple: a round fruit with shiny red or green skin and firm white flesh
** pirngguoo: yuarnxirng shuiiguoo, guangliahng horng huoh lvhseh guoopir, jieshir bairseh guoorouh
Apple is the fruit of apple tree which belongs to the rose family. It is a kind of common fruit.
pirngguoo shih pirngguoo shuh d guoo'zi, shuuyur meirgui-ke, shih 1-zhoong charngjiahn shuiiguoo.
China is the biggest apple producer with about 50% of the world's production, and the United States is the second with more than 6%.
Zhongguor chuchaan pirngguoo zuih duo, yue zhahn shihjieh d 50%; Meeiguor dih-2, chaoguoh 6%.
Apples are usually eaten raw, also can be made apple juice and apple cider.
pirngguoo yiban sheng-chi, yee keeyii zuoh pirngguoo-zhi her pirngguoo-jiuu.
Apple is good for health. It can reduce white fat, prevent obesity and cancer.
pirngguoo yoouyih jiahnkang, jiaanshaao bair zhifarng, yuhfarng chifeir her airzhehng.
Apple seeds are toxic, but eating small amount will not cause problem.
pirngguoo zhoongzii yoou dur, chi xiaooliahng meir wehntir.
# Pinyin/Application

Search Pinyin application
Application is the practical use of something.
yihngyohng shih mooushihwuh d shirjih yohngtur.
# Pinyin/Appear

See also
# Pinyin/Architect

See also
Jiànzhùshī
# Pinyin/Arctic Ocean

See also
The Arctic Ocean is the ocean around the North Pole.
Beeibing Yarng shih weiraoh Beeijir d haaiyarng.
The most northern parts of Eurasia and North America are around the Arctic Ocean.
Eurasia her Beei Meeizhou zuih beeibuh weir'zhe Beeibing Yarng.
Thick ice and snow cover almost all of this ocean in winter, and most of it in summer.
houh d bing-xuee zaih dongtian jihu fuhgaih zheenggeh Beeibing Yarng, xiahtian yee fuhgaih dahbuhfehn.
An icebreaker or a nuclear-powered submarine can use the Arctic Ocean to go between the Pacific and Atlantic oceans.
pohbing-chuarn huoh her-qiarntiing nerng tongguoh Beeibing Yarng lairwaang Taipirng Yarng her Dahxi Yarng.
# Puzzles/Geometric Puzzles/Rectangle and Circle
## Problem

Suppose we have a circle inscribed within a square. Now suppose a rectangle extends from one corner of the square to a point on the circle (see diagram).
If this rectangle is 6 inches by 12 inches, what is the radius of the circle in inches?
Hint | Solution
# Puzzles/Hard Sequence 1/Solution

The answer is 76.
Rule:
# Puzzles/Geometric Puzzles/Matchsticks

Puzzles | Geometric puzzles | Matchsticks
You have 6 unit length matchsticks, and you urgently need to make 4 triangles with unit length sides. You can't use anything except matchsticks to make the triangles, and the matchsticks are indestructable and non-replicable. How do you solve the dilemma?
Solution
# Puzzles/Geometric Puzzles/Matchsticks/Solution

Arrange the six matchsticks along the edges of a tetrahedron, or triangular pyramid. The matchsticks will form 4 triangular faces.
# Puzzles/Geometric Puzzles/Rectangle and Circle/Hint

A right triangle used here would make Pythagoras proud.
# Puzzles/Geometric Puzzles/Rubber Band

Puzzles | Geometric puzzles | Rubber Band
Imagine a rubber band which is infinitely thin and fixed on one end onto a plane with a nail. In its relaxed state it measures exactly 6cm and can be stretched to exactly 8cm.
Your task is to construct a right-angled triangle in the plane using only the rubber band, your absolutely precise hands and a sharp pencil.
Solution 1 | Solution 2
# Puzzles/Geometric Puzzles/Rubber Band/Solution 2

Puzzles | Geometric puzzles | Rubber Band | Solution 2
1. By stretching the rubber band, while holding the loose end to the nail, you can measure 4 cm. Draw a circle with radius 4cm around the nail.
2. Unstretch the rubber band and, while holding the loose end to the nail, draw a circle with radius 3 cm around the nail.
3. Stretch the rubber band. (It's 8 cm long now.) At the point, where it crosses the 3cm-line, fix it with your left-hand finger. The rest of the rubber band is 5 cm long. Turn the 5cm-part, so that the free end lies on the 4cm-line from step 1. Put your right-hand finger there.
The triangle "left finger" - "nail" - "right finger" has lengths 3, 4 and 5. Therefore it is a right-angled triangle.
# Puzzles/Hard Sequence 2/Solution

The answer is 68.
Rule:
# Puzzles/Geometric Puzzles/Rectangle and Circle/Solution
## Answer

30 inches

## Tools Used to Solve

Pythagorean Theorem
Quadratic Formula

## Solution

Given:
    $x=12in$
    $y=6in$
Find:
    $r=?$
We realize that every point on a circle is equidistant from the origin. This implies that the rectangle's corner touching the circle must be r inches away from the origin, where r is the radius. We can then draw a right triangle with sides $r-y$ and $r-x.$ Now apply the Pythagorean Theorem to this triangle and solve for r.
    $(r-x)^{2}+(r-y)^{2}=r^{2}$
    $r^{2}-2r(x+y)+x^{2}+y^{2}=0$
The above equation is quadratic and can be solved by applying the Quadratic Formula.
    $r={\frac {2(x+y)\pm {\sqrt {(4(x+y)^{2}-4(x^{2}+y^{2})\ }}}{2}}$
Which simplifies to,
    $r=(x+y)\pm {\sqrt {2xy}}$
Now we can plug in our numbers and solve,
    $r=(6+12)\pm {\sqrt {2(6)(12)}}$
    $r=18\pm 12$
    $r=30$ or $r=6$
Thus the radius of our circle is 30 inches. Notice that 6 inches is not a valid answer. Why?
Comment: Simply making a statement that "we can then draw..." is confusing. Need more explanation on why r-x and r-y are valid descriptors for the triangle sides. This is easier to see with the r-x side than with the r-y.
# Puzzles/Geometric Puzzles/Rubber Band/Solution 1

Puzzles | Geometric puzzles | Rubber Band | Solution 1
Stretch the rubber band, and draw a line along it on the plane.
By stretching the rubber band, while holding the loose end to the nail, you can measure 4cm. By folding it again, you can measure 2cm. Similarly, you can measure 1cm and then 0.5cm. Mark the 0.5cm on the line, and using the last 0,5cm of the rubber band, mark the line you drew at 0.5cm intervals, so you can use it as a ruler.
Draw two circles around the nail, with radius 1.5cm and 2cm. Using 6cm of the rubber band, make a triangle, with a corner touching each circle, and the last corner at the nail. You now have a right angle at the nail.
# Proteomics/Protein Separations- Electrophoresis/Timeline of Electrophoresis

* Introduction to Electrophoresis
* Gel Electrophoresis
* One Dimentional Gel Electrophoresis
* Two Dimensional Polyacrylamide Gel Electrophoresis(2D-PAGE)
* Differential in Gel Electrophoresis(DIGE)
* QPNC-PAGE
* Capillary Electrophoresis
* Timeline of Electrophoresis
* Databases
* Web Pages
* Online Applications
* Further Readings

### Timeline of Electrophoresis

1930s : Use of sucrose for gel electrophoresis.
1937 : The official launching of Tiselius' moving boundary electrophoresis (MBE).
1939 : Zone Electrophoresis
1950 : Rich in introducing novel methodologies in zone electrophoresis (ZE)
1950 : Agar Gel electrophoresis
1955 : Introduction of starch gels
1957 : Cellulose acetate Electrophoresis(CAc) by Kohn
1959 : Arrival of Acrylamide gels (Raymond and Winstraub)
1961 : Electrophoresis in silica gel by Honnegar
1961 : IsoElectricFocusing by Svensson
1964 : Electrophoresis in thin layer of sephadex beads by Fasella et.al
1964 : Ornstein and Davis introduced Disc-Gel Electrophoresis.
1969 : Beber and Osborn introduced denaturing agents i.e. SDS separation of protein subunit
1970 : Stacking gel and SDS by Laemmli was used to separate T4 phage proteins
1975 : 2-D gels :Isoelectric focussing and SDS gel electrophoresis by OFarrell.
1977 : Arrival of Sequencing gels
1970s : Arrival of Agarose gels
1980s : Immobilized pH gradients
1983 : Pulsed field gel electrophoresis was invented
1983 : Introduction of Capillary electrophoresis
Next Section Databases

### References

* http://www.csupomona.edu/~nebuckley/Courses/Bio451/Lectures/Bio451Lecture4.htm

### Subcription Based References

* Righetti PG, Electrophoresis: the march of pennies, the march of dimes; Journal of Chromatography A. 2005 Jun 24;1079(1-2):24-40. Abstract
# Proteomics/Protein Separations- Electrophoresis/Timelines of Electrophoresis

* Gel Electrophoresis
* One Dimensional Gel Electrophoresis
* Two Dimensional Polyacrylamide Gel Electrophoresis(2D-PAGE)
* Differential in Gel Electrophoresis(DIGE)
* QPNC-PAGE
* Capillary Electrophoresis
* Timeline of Electrophoresis
* Databases
* Web Pages
* Online Applications
* Further Readings

### Timeline of Electrophoresis

1930s: Use of sucrose for gel electrophoresis.
1937: The official launching of Tiselius' moving boundary electrophoresis (MBE).
1939: Zone Electrophoresis
1950: Rich in introducing novel methodologies in zone electrophoresis (ZE)
1950: Agar Gel electrophoresis
1955: Introduction of starch gels
1957: Cellulose acetate Electrophoresis (CAc) by Kohn
1959: Introduction of acrylamide gels by Raymond and Winstraub
1961: Electrophoresis in silica gel by Honnegar
1961: IsoElectricFocusing by Svensson
1964: Electrophoresis in thin layer of sephadex beads by Fasella et.al
1964: Disc gel electrophoresis Ornstein and Davis
1969: Introduction of denaturing agents especially SDS separation of protein subunit by Beber and Osborn
1970: T4 phage proteins were separated using stacking gel and SDS by Laemmli
1975: 2 Dimensional gels: Isoelectric focusing and SDS gel electrophoresis by OFarrell.
1977: Sequencing gels
1970s: agars gels
1980s: Immobilized pH gradients
1983: Pulsed field gel electrophoresis
1983: Capillary electrophoresis

### References

* Electrophoresis: the march of pennies, the march of dimes. Righetti PG.
* http://www.csupomona.edu/~nebuckley/Courses/Bio451/Lectures/Bio451Lecture4.htm