public void TestMethod21() { // testing cmp_i RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(33); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); cmp_i c = new cmp_i(1, 2); sRF[1] = 1; sRF[2] = 1; c.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(0, sRF[32].i); sRF[1] = 1; sRF[2] = 2; c.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(1, sRF[32].i); sRF[1] = 2; sRF[2] = 1; c.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(2, sRF[32].i); }
public void TestMethod20() { // testing cmp_v RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(33); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[1] = new Vector4(1, 2, 3, 4); vRF[2] = new Vector4(1, 2, 3, 5); cmp_v c = new cmp_v(1, 2); c.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(3, sRF[32].i); vRF[2] = new Vector4(1, 2, 3, 4); c.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(0, sRF[32].i); }
public void TestMethod28() { // testing bge_rt RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(33); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); cmp_f c = new cmp_f(1, 2); bge_rt b = new bge_rt(5); sRF[1] = (float)1.5; sRF[2] = (float)1.5; c.Process(vRF, sRF, m, ic); b.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(5, sRF[31].i); sRF[1] = (float)2; sRF[2] = (float)1; c.Process(vRF, sRF, m, ic); b.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(10, sRF[31].i); }
public void TestMethod30() { // testing jmp_link and ret RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(33); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); jmp_link j = new jmp_link(10); sRF[31] = 1; j.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(1, sRF[30].i); Assert.AreEqual <int>(11, sRF[31].i); ret r = new ret(); r.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(1, sRF[31]); }
public void TestMethod1() { // testing s_load_4byte RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); m.Write(15, BitConverter.GetBytes(2500)); s_load_4byte ld = new s_load_4byte(0, 1, 15); ld.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(2500, sRF[0].i); }
public void TestMethod35() { // Test v_reduce RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[0] = new Vector4(1, 2, 3, 4); v_reduce vr = new v_reduce(0, 0); vr.Process(vRF, sRF, m, ic); Assert.AreEqual(10, sRF[0].f); }
public void TestMethod34() { // Test s_sqrt RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); sRF[1] = (float)16.0; s_sqrt sq = new s_sqrt(0, 1); sq.Process(vRF, sRF, m, ic); Assert.AreEqual(4.0, sRF[0].f); }
public void TestMethod5() { // testing s_get_from_v RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[0] = new Vector4(5, 6, 7, 8); s_get_from_v g = new s_get_from_v(0, 0, 1); g.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(6, sRF[0].i); }
public void TestMethod3() { // testing s_write_high RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); s_write_high swh = new s_write_high(0, 43724); swh.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(-1429471232, sRF[0].i); }
public void TestMethod29() { // testing real_jmp RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(33); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); real_jmp j = new real_jmp(10); j.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(10, sRF[31].i); }
public void TestMethod4() { // testing s_write_low RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); s_write_low swl = new s_write_low(0, 43724); swl.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(43724, sRF[0].i); }
public void TestMethod2() { // testing s_store_4byte RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); sRF[0] = 51; s_store_4byte st = new s_store_4byte(0, 1, 15); s_load_4byte ld = new s_load_4byte(1, 5, 15); st.Process(vRF, sRF, m, ic); ld.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(51, sRF[1].i); }
public void TestMethod31() { // testing s_push and s_pop RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(33); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); sRF[0] = 15; s_push pu = new s_push(0); s_pop po = new s_pop(0); pu.Process(vRF, sRF, m, ic); po.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(15, sRF[0].i); }
public void TestMethod11() { // testing vv_mul_dot RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[2] = new Vector4(5, 6, 7, 8); vRF[1] = new Vector4(1, 2, 3, 4); vv_mul_dot dot = new vv_mul_dot(0, 1, 2); dot.Process(vRF, sRF, m, ic); Assert.AreEqual <float>(70, sRF[0].f); }
public void TestMethod12() { // testing vv_magn RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[1] = new Vector4(1, 2, 3, 4); v_magn mn = new v_magn(0, 1); mn.Process(vRF, sRF, m, ic); Assert.AreEqual <float>((float)Math.Sqrt(Math.Pow(1, 2) + Math.Pow(2, 2) + Math.Pow(3, 2)), sRF[0].f); }
public void TestMethod13() { // testing v_get_from_s RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[0] = new Vector4(1, 2, 3, 4); sRF[1] = (float)5; v_get_from_s vs = new v_get_from_s(1, 0, 2); vs.Process(vRF, sRF, m, ic); Assert.AreEqual <float>((float)5, vRF[0].Z); }
public void TestMethod14() { // testing not RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); sRF[1] = 10; not n = new not(0, 1); n.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(-11, sRF[0].i); }
public void TestMethod18() { // testing itof RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); sRF[1] = 10; itof it = new itof(0, 1); it.Process(vRF, sRF, m, ic); Assert.AreEqual <float>((float)10, sRF[0].f); }
public void TestMethod19() { // testing ftoi RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); sRF[1] = (float)10.6; ftoi ft = new ftoi(0, 1); ft.Process(vRF, sRF, m, ic); Assert.AreEqual <int>((int)10, sRF[0].i); }
public void TestMethod17() { // testing xor RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); sRF[1] = 10; sRF[2] = 9; xor x = new xor(0, 1, 2); x.Process(vRF, sRF, m, ic); Assert.AreEqual <int>(3, sRF[0].i); }
public void TestMethod9() { // testing vv_mul_ele RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[2] = new Vector4(5, 6, 7, 8); vRF[1] = new Vector4(1, 2, 3, 4); vv_mul_ele vs = new vv_mul_ele(0, 1, 2); Vector4 ans = new Vector4(5, 12, 21, 32); vs.Process(vRF, sRF, m, ic); Assert.AreEqual <float>(ans.X, vRF[0].X); Assert.AreEqual <float>(ans.Y, vRF[0].Y); Assert.AreEqual <float>(ans.Z, vRF[0].Z); Assert.AreEqual <float>(ans.W, vRF[0].W); }
public void TestMethod10() { // testing vv_div RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[2] = new Vector4(5, 6, 7, 8); vRF[1] = new Vector4(1, 2, 3, 4); vv_div vd = new vv_div(0, 1, 2); Vector4 ans = new Vector4((float)1 / 5, (float)1 / 3, (float)3 / 7, (float)4 / 8); vd.Process(vRF, sRF, m, ic); Assert.AreEqual <float>(ans.X, vRF[0].X); Assert.AreEqual <float>(ans.Y, vRF[0].Y); Assert.AreEqual <float>(ans.Z, vRF[0].Z); Assert.AreEqual <float>(ans.W, vRF[0].W); }
public void TestMethod32() { // testing v_push and v_pop RegisterFile <Vector4> vRF = new RegisterFile <Vector4>(32); RegisterFile <Scalar> sRF = new RegisterFile <Scalar>(32); Memory m = new Memory(5000); Memory m_ic = new Memory(5000); IntersectionCore ic = new IntersectionCore(m_ic); vRF[2] = new Vector4(5, 6, 7, 8); v_push vs = new v_push(2); v_pop vl = new v_pop(0); vs.Process(vRF, sRF, m, ic); vl.Process(vRF, sRF, m, ic); //Console.Write(MemoryMarshal.Read<int>(m.read(1))); //Console.Write(MemoryMarshal.Read<float>(BitConverter.GetBytes((float)5))); Console.Write(vRF[0]); Assert.AreEqual <float>(7, vRF[0].Z); }